結果
| 問題 |
No.320 眠れない夜に
|
| コンテスト | |
| ユーザー |
koyumeishi
|
| 提出日時 | 2015-12-13 00:51:52 |
| 言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
| 結果 |
AC
|
| 実行時間 | 2 ms / 2,000 ms |
| コード長 | 724 bytes |
| コンパイル時間 | 722 ms |
| コンパイル使用メモリ | 74,692 KB |
| 実行使用メモリ | 5,376 KB |
| 最終ジャッジ日時 | 2024-09-15 10:56:22 |
| 合計ジャッジ時間 | 1,644 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 4 |
| other | AC * 31 |
ソースコード
#include <iostream>
#include <vector>
#include <cstdio>
#include <sstream>
#include <map>
#include <string>
#include <algorithm>
#include <queue>
#include <cmath>
#include <set>
using namespace std;
template<class T>
ostream& operator << (ostream& os, vector<T> vec){
for(int i=0; i<vec.size(); i++){
os << vec[i] << " ";
}
return os;
}
int main(){
long long n,m;
cin >> n >> m;
vector<long long> fib(n+1, 0);
fib[0] = fib[1] = 1;
for(int i=2; i<n; i++){
fib[i] = fib[i-1] + fib[i-2];
}
long long val = fib[n-1] - m;
if(val<0){
cout << -1 << endl;
return 0;
}
int cnt = 0;
int k = n-3;
while(val){
if(val >= fib[k]){
val -= fib[k];
cnt++;
}
k--;
}
cout << cnt << endl;
return 0;
}
koyumeishi