結果
問題 | No.954 Result |
ユーザー | 東前頭十一枚目 |
提出日時 | 2019-12-17 17:02:00 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 2 ms / 2,000 ms |
コード長 | 546 bytes |
コンパイル時間 | 1,597 ms |
コンパイル使用メモリ | 166,484 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-07-04 12:36:43 |
合計ジャッジ時間 | 2,358 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 7 |
other | AC * 29 |
ソースコード
#include <bits/stdc++.h> using namespace std; int main() { const int MAX = 90; int64_t fib[MAX]; fib[0] = fib[1] = 1; for(int i = 2; i < MAX; ++i) { fib[i] = fib[i - 1] + fib[i - 2]; } int64_t a[5]; for(int i = 0; i < 5; ++i) cin >> a[i]; reverse(a, a + 5); int ans = 0; for(int i = 0; i < MAX; ++i) { if(fib[i] > a[0]) break; if(fib[i] == a[0]) { for(int k = 0; k < 5 and i + k < MAX; ++k) { if(fib[i + k] == a[k]) { ans = max(ans, k + 1); } else { break; } } } } cout << ans << endl; return 0; }