結果
| 問題 |
No.1152 10億ゲーム
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2020-08-07 23:00:12 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
TLE
|
| 実行時間 | - |
| コード長 | 1,226 bytes |
| コンパイル時間 | 260 ms |
| コンパイル使用メモリ | 82,592 KB |
| 実行使用メモリ | 97,100 KB |
| 平均クエリ数 | 0.04 |
| 最終ジャッジ日時 | 2024-07-17 05:08:49 |
| 合計ジャッジ時間 | 4,118 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 2 TLE * 1 -- * 47 |
ソースコード
x1,x2=map(int,input().split())
def calc(x):
c=[0,0]
while x%2==0:
c[0]+=1
x//=2
while x%5==0:
c[1]+=1
x//=5
return c
c1=calc(x1)
c2=calc(x2)
def dis(x,y):
return abs(x[0]-y[0])+abs(x[1]-y[1])
for i in range(70):
if i%2==0:
if c1[0]<9:
if dis([c1[0]+1,c1[1]],c2)<dis(c1,c2):
c1=[c1[0]+1,c1[1]]
x1*=2
print(x1,flush=True)
if x1==x2:break
continue
if c1[0]>0:
if dis([c1[0]-1,c1[1]],c2)<dis(c1,c2):
c1=[c1[0]-1,c1[1]]
x1//=2
print(x1,flush=True)
if x1==x2:break
continue
if c2[0]<9:
if dis([c1[0],c1[1]+1],c2)<dis(c1,c2):
c1=[c1[0],c1[1]+1]
x1*=5
print(x1,flush=True)
if x1==x2:break
continue
if c2[0]>0:
if dis([c1[0],c1[1]-1],c2)<dis(c1,c2):
c1=[c1[0],c1[1]-1]
x1//=5
print(x1,flush=True)
if x1==x2:break
continue
else:
x2=int(input())
if x1==x2:break