結果
| 問題 |
No.219 巨大数の概算
|
| コンテスト | |
| ユーザー |
ntuda
|
| 提出日時 | 2025-01-20 23:03:40 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 368 ms / 1,500 ms |
| コード長 | 566 bytes |
| コンパイル時間 | 194 ms |
| コンパイル使用メモリ | 81,792 KB |
| 実行使用メモリ | 77,824 KB |
| 最終ジャッジ日時 | 2025-01-20 23:04:03 |
| 合計ジャッジ時間 | 17,234 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 1 |
| other | AC * 51 |
ソースコード
def digit(x):
i = 0
while x >= 10:
i += 1
x /= 10
return i
def calc(A,C):
a,b = A
c,d = C
ac = a * c
bd = b + d
x = digit(ac)
if x > 0:
bd += x
ac /= 10 ** x
return (ac,bd)
for _ in range(int(input())):
A,B = map(int,input().split())
b = digit(A)
a = A / (10 ** b)
D = (a,b)
X = (1,0)
while B > 0:
if B & 1:
X = calc(D,X)
B >>= 1
D = calc(D,D)
tmp = str(X[0])
a0 = tmp[0]
a1 = tmp[2]
a2 = X[1]
print(a0,a1,a2)
ntuda