結果
問題 |
No.1286 Stone Skipping
|
ユーザー |
![]() |
提出日時 | 2023-11-04 10:49:29 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 693 bytes |
コンパイル時間 | 310 ms |
コンパイル使用メモリ | 82,272 KB |
実行使用メモリ | 68,272 KB |
最終ジャッジ日時 | 2024-09-25 21:55:08 |
合計ジャッジ時間 | 2,369 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 14 WA * 11 RE * 1 |
ソースコード
# coding: utf-8 # Your code here! D=int(input()) MAX_BOUND=64 def calc_distance(init_power): rev=0 while init_power: rev+=init_power init_power//=2 return rev ans=D for k in range(MAX_BOUND): high=2**(k+1)-1 low=2**k #error判定 high_distance=calc_distance(high) low_distance=calc_distance(low) if low_distance<=D<=high_distance: pass else: continue while high-low>1: middle=(high+low)//2 distance=calc_distance(middle) if distance>=D: high=middle else: low=middle ans=min(ans,middle) print(ans)