結果
問題 |
No.320 眠れない夜に
|
ユーザー |
|
提出日時 | 2024-06-14 20:16:41 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 38 ms / 2,000 ms |
コード長 | 806 bytes |
コンパイル時間 | 562 ms |
コンパイル使用メモリ | 82,580 KB |
実行使用メモリ | 53,820 KB |
最終ジャッジ日時 | 2024-06-14 20:16:45 |
合計ジャッジ時間 | 3,358 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 31 |
ソースコード
def experiment(): import numpy as np fib = [1] * 2 for _ in range(80): fib.append(fib[-1] + fib[-2]) choose = np.random.randint(0, 5, size=80) val = sum(fib[i] for i, c in enumerate(choose) if c == 0) print(val) # greedy? count = 0 for f in reversed(fib): if val >= f: val -= f count += 1 print(val, count, np.sum(choose == 0)) def main(): n, m = list(map(int, input().split())) fib = [1] * 2 for _ in range(n - 2): fib.append(fib[-1] + fib[-2]) val = fib[n - 1] - m if val < 0: return -1 count = 0 for f in reversed(fib[:-2]): if val >= f: val -= f count += 1 if val != 0: return -1 return count # experiment() print(main())