QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#855878 | #9552. The Chariot | JEdward | WA | 93ms | 10700kb | Python3 | 802b | 2025-01-13 12:02:46 | 2025-01-13 12:02:52 |
Judging History
answer
import math
for _ in range(int(input())):
A, B, C, X, Y, D = map(int, input().split(' '))
def cal(dis):
return A + max(0, min(dis - X, Y)) * B + max(0, dis - X - Y) * C
ans = int(10 ** 4399)
k = D // X
if k:
for rest in [min(D - k * X, Y), min(k * Y, D - k * X)]:
ans = min(ans, k * A + rest * B + (D - k * X - rest) * C)
if(D >= X + Y): ans = min(ans, cal(D))
ans = min(ans, (D + X - 1) // X * A)
k = D // (X + Y)
if k:
ans = min(ans, k * A + k * Y * B + (D - k * (X + Y)) * C)
k = (D + X + Y - 1) // (X + Y)
if k:
ans = min(ans, k * A + (D - k * X) * B)
k -= 1
if k:
ans = min(ans, k * A + k * Y * B + (D - k * (X + Y)) * C)
print(ans)
詳細信息
Test #1:
score: 100
Accepted
time: 13ms
memory: 10700kb
input:
5 160 27 41 3 12 3 160 27 41 3 12 4 160 27 41 3 12 99 1 999 999 1 99 999 999 999 1 1 99 9999999999999999
output:
160 187 3226 999 10000000000099799
result:
ok 5 lines
Test #2:
score: -100
Wrong Answer
time: 93ms
memory: 10640kb
input:
2077 63 88 64 47 55 88 4 75 38 53 33 41 41 1 28 6 13 100 57 88 77 35 5 48 100 36 97 24 93 87 57 25 26 84 62 18 29 11 33 88 86 71 33 16 7 4 73 68 50 65 72 14 43 78 15 31 72 42 39 29 31 10 76 58 35 89 39 55 99 11 16 82 21 18 57 44 80 16 38 31 99 58 59 69 24 22 69 76 14 83 96 40 56 31 14 36 75 84 27 57...
output:
126 -896 310 -1822 400 -1593 -158 561 300 -388 62 312 -483 76 48 192 150 130 -5777 636 -4248 -205 112 180 -55 138 36 605 -866 -817 88 -4460 285 -5680 330 325 174 128 32 36 -2009 -4374 -1374 24 192 170 17 88 -1072 102 140 -3106 -578 52 -599 -3673 -1360 -357 180 -3617 -3027 145 -3175 -8 -567 -1724 156...
result:
wrong answer 2nd lines differ - expected: '4', found: '-896'