結果
問題 |
No.1152 10億ゲーム
|
ユーザー |
![]() |
提出日時 | 2020-08-07 22:39:47 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
RE
|
実行時間 | - |
コード長 | 3,311 bytes |
コンパイル時間 | 174 ms |
コンパイル使用メモリ | 13,056 KB |
実行使用メモリ | 28,264 KB |
平均クエリ数 | 26.68 |
最終ジャッジ日時 | 2024-07-17 04:57:29 |
合計ジャッジ時間 | 8,577 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 21 RE * 29 |
ソースコード
import sys input = sys.stdin.readline x1,x2=map(int,input().split()) def two_five(x): A=0 while x%2==0: A+=1 x//=2 B=0 while x%5==0: B+=1 x//=5 return [A,B] x1=two_five(x1) x2=two_five(x2) def calc(x): return pow(2,x[0])*pow(5,x[1]) if (x1[0]+x1[1]-x2[0]-x2[1])%2==1: while x1!=x2: if x1[0]+1<x2[0]: x1[0]+=1 print(calc(x1),flush=True) if x1==x2: break k=int(input()) x2=two_five(k) elif x1[0]>x2[0]+1: x1[0]-=1 print(calc(x1),flush=True) if x1==x2: break k=int(input()) x2=two_five(k) else: if x1[1]+1<x2[1]: x1[1]+=1 print(calc(x1),flush=True) if x1==x2: break k=int(input()) x2=two_five(k) else: x1[1]-=1 print(calc(x1),flush=True) if x1==x2: break k=int(input()) x2=two_five(k) else: t=[7,9] while x1!=t and x1!=x2: if x1[0]<t[0]: x1[0]+=1 print(calc(x1),flush=True) if x1==x2: break k=int(input()) x2=two_five(k) elif x1[0]>t[0]: x1[0]-=1 print(calc(x1),flush=True) if x1==x2: break k=int(input()) x2=two_five(k) else: if x1[1]<t[1]: x1[1]+=1 print(calc(x1),flush=True) if x1==x2: break k=int(input()) x2=two_five(k) else: x1[1]-=1 print(calc(x1),flush=True) if x1==x2: break k=int(input()) x2=two_five(k) if x1==x2: sys.exit() x1=[9,9] print(calc(x1),flush=True) if x1==x2: sys.exit() k=int(input()) x2=two_five(k) while x1!=x2: if x1[0]+1<x2[0]: x1[0]+=1 print(calc(x1),flush=True) if x1==x2: break k=int(input()) x2=two_five(k) elif x1[0]>x2[0]+1: x1[0]-=1 print(calc(x1),flush=True) if x1==x2: break k=int(input()) x2=two_five(k) else: if x1[1]+1<x2[1]: x1[1]+=1 print(calc(x1),flush=True) if x1==x2: break k=int(input()) x2=two_five(k) else: x1[1]-=1 print(calc(x1),flush=True) if x1==x2: break k=int(input()) x2=two_five(k)