結果
| 問題 |
No.1464 Number Conversion
|
| コンテスト | |
| ユーザー |
da_ab
|
| 提出日時 | 2021-04-02 22:34:24 |
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 733 bytes |
| コンパイル時間 | 173 ms |
| コンパイル使用メモリ | 12,544 KB |
| 実行使用メモリ | 10,880 KB |
| 最終ジャッジ日時 | 2024-12-23 20:14:45 |
| 合計ジャッジ時間 | 1,809 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 8 WA * 20 RE * 1 |
ソースコード
# 1464 Number Conversion
from sys import stdin
def dividePossibleTimes(x,n):
t=0
while True:
x=x/n
if not x.is_integer():
break
t+=1
return t
x=float(stdin.readline())
decpart=x-int(x)
integer=x-decpart
if decpart==0:
print('{}/1'.format(int(integer)))
exit()
denominator=10**(len(format(decpart))-2)
decpart=format(decpart)[2:]
dp=int(decpart)
min2=min(dividePossibleTimes(dp,2),dividePossibleTimes(int(denominator),2))
min5=min(dividePossibleTimes(dp,5),dividePossibleTimes(int(denominator),5))
denominator=denominator/(2**min2)
dp=dp/(2**min2)
denominator=denominator/(5**min5)
dp=dp/(5**min5)
print('{0}/{1}'.format(int(integer*denominator+dp),int(denominator)))
da_ab