結果

問題 No.320 眠れない夜に
ユーザー Bantako
提出日時 2018-07-09 23:21:38
言語 C++14
(gcc 13.3.0 + boost 1.87.0)
結果
WA  
実行時間 -
コード長 642 bytes
コンパイル時間 1,791 ms
コンパイル使用メモリ 170,092 KB
実行使用メモリ 6,944 KB
最終ジャッジ日時 2024-07-18 00:26:19
合計ジャッジ時間 3,037 ms
ジャッジサーバーID
(参考情報)
judge3 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 25 WA * 6
権限があれば一括ダウンロードができます
コンパイルメッセージ
main.cpp:16:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   16 | main(){
      | ^~~~

ソースコード

diff #

#include<bits/stdc++.h>
#define rep(i,a,b) for(int i=int(a);i<int(b);++i)
using namespace std;
typedef long long ll;
int INF = (1LL << 30) - 1;
int MOD = 1e9+7;
ll N,M;
vector<ll> V;
ll dfs(ll dif,int i){
    if(dif == 0)return 0;
    if(dif >= V[i]){
        return dfs(dif - V[i], i-1) + 1;
    }
    else           return dfs(dif, i-1);
}
main(){
    cin >> N >> M;
    V.resize(N);
    V[0] = V[1] = 1;
    rep(i,2,N)V[i] = V[i-1] + V[i-2];
    ll dif = V[N-1] - M;
    //cout << dif << endl;
    if(dif >= 0)cout << dfs(dif, N-2) << endl;
    else        cout << -1 << endl;
    //V[N-2]までの和でdifを表せるかどうか

    
}
0