QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#769540 | #9622. 有限小数 | xjt05 | TL | 6ms | 10472kb | Python3 | 867b | 2024-11-21 18:05:10 | 2024-11-21 18:05:13 |
Judging History
answer
def gcd(x,y):
if y==0:
return x
else: return gcd(y,x%y)
f=int(input())
#=int(input())
p=''
while(f>0):
two=1
a, b = map(int, input().split())
ans1=9999999999999999
ans2=9999999999999999
for i in range(30):
five=1
for j in range(13):
tem=a*two*five
m=0
if tem<=b:
m=int(b/tem)
else :
m=int(tem/b)+(tem%b>0)
c=m*b-tem
fenmu=b*two*five
k=gcd(c,fenmu)
fenmu/=k
#print(k)
c/=k
five*=5
if fenmu>1000000000:
break
if ans1>c:
ans1=c
ans2=fenmu
else: continue
two*=2
p=p+str(int(ans1))+' '+str(int(ans2))+'\n'
f-=1
print(p)
详细
Test #1:
score: 100
Accepted
time: 6ms
memory: 10472kb
input:
4 1 2 2 3 3 7 19 79
output:
0 1 1 3 1 4375 3 316
result:
ok 4 case(s)
Test #2:
score: -100
Time Limit Exceeded
input:
10000 11 12 28 53 17 60 2 35 17 181 80 123 68 141 79 163 71 99 13 64 33 61 15 32 16 61 11 86 33 74 128 143 40 53 7 23 30 31 5 6 86 181 73 91 13 23 71 81 1 2 7 38 117 160 33 83 129 151 88 153 25 58 16 19 19 141 95 124 43 96 71 139 11 59 106 109 93 152 34 43 17 99 1 57 20 159 16 25 5 73 159 170 172 17...