結果
| 問題 |
No.915 Plus Or Multiple Operation
|
| コンテスト | |
| ユーザー |
tamato
|
| 提出日時 | 2019-10-25 22:03:45 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 996 bytes |
| コンパイル時間 | 289 ms |
| コンパイル使用メモリ | 82,396 KB |
| 実行使用メモリ | 54,368 KB |
| 最終ジャッジ日時 | 2024-11-07 03:30:08 |
| 合計ジャッジ時間 | 1,639 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 4 WA * 6 |
ソースコード
import math
q = int(input())
for _ in range(q):
a, b, c = map(int, input().split())
if c == 1:
print(a*b)
continue
num = []
while True:
a, mod = divmod(a, c)
num.append(mod)
if a == 0:
break
num.reverse()
i = 0
ans = 0
while True:
if num[i] == 0:
if i < len(num) - 1:
ans += b
else:
break
i += 1
else:
if i == len(num) - 1:
ans += b
break
else:
if num[i+1] != 0:
if (num[i]*c+num[i+1]-1)//(c-1)+1 <= 2:
ans += 3*b
i += 2
if i == len(num):
break
else:
ans += 2*b
i += 1
else:
ans += 2 * b
i += 1
print(ans)
tamato