QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#855114 | #9552. The Chariot | JEdward | Compile Error | / | / | C++20 | 2.8kb | 2025-01-12 14:51:44 | 2025-01-12 14:51:44 |
Judging History
answer
import math
for _ in range(int(input())):
a = list(input().split(' '))
A = int(a[0])
B = int(a[1])
C = int(a[2])
X = int(a[3])
Y = int(a[4])
D = int(a[5])
if D<=X:
print(A)
continue
def cal(dis):
if(dis == 0):
return 0
ret = A
dis -= X
if dis <= 0:
return ret
if dis <= Y:
ret += B * dis
else:
dis -= Y
ret += Y*B + C * dis
return ret
ans = int(10 ** 4399)
# case 1:
case1_times = D // X
mo = D % X
if(mo > 0):
case1_times += 1
case1_val = case1_times * A
ans = min(ans, case1_val)
# case 2:
case2_rest = D - (case1_times - 1) * X
case2_times = case1_times - 1
case2_val = (case2_times-1) * A + cal(case2_rest+X)
ans = min(ans, case2_val)
# case 3:
case3_times = D // (X + Y)
mo = D % (X + Y)
if mo:
case3_times += 1
fuyu = (X + Y) * case3_times - D
case3_val = (A + B * Y) * case3_times
case3_val -= min(fuyu, Y) * B
ans = min(ans, case3_val)
# case 4:
case4_times = case3_times - 1
case4_res = D - (X + Y) * case4_times
case4_val = (case4_times - 1) * (A + B * Y) + cal(X + Y + case4_res)
# print(case4_times, case4_res, case4_val)
if case4_times > 0:
ans = min(ans, case4_val)
case4_times = case4_times - 1
case4_res = D - (X + Y) * case4_times
case4_val = (case4_times - 1) * (A + B * Y) + cal(X + Y + case4_res)
if case4_times > 0:
ans = min(ans, case4_val)
# case 5:
case5_val = cal(D)
ans=min(ans, case5_val)
# Case 8: (exgcd?)
a=(D+X+Y-1)//(X+Y)
if a*X<=D:
b=D-a*X
case8_val=a*A+b*B
ans = min(ans,case8_val)
else:
case8_val = 0
# case 6:
D -= X;
case6_val = A
if D > 0:
case6_times = D // (X + Y)
mo = D % (X + Y)
if mo:
case6_times += 1
case6_times = case6_times - 1
case6_rest = D - (X + Y) * case6_times
case6_val += case6_times * (A + B * Y) + cal(case6_rest)
ans = min(ans, case6_val)
else:
case6_val = ans
# case 7:
D -= X;
case7_val = 2 * A
if D > 0:
case7_times = D // (X + Y)
mo = D % (X + Y)
if mo:
case7_times += 1
case7_times = case7_times - 1
case7_rest = D - (X + Y) * case7_times
case7_val += case7_times * (A + B * Y) + cal(case7_rest)
ans = min(ans, case7_val)
else:
case7_val = ans
# print([case1_val, case2_val, case3_val, case4_val, case5_val, case6_val])
print(ans)
Details
answer.code:28:7: error: invalid preprocessing directive #case 28 | # case 1: | ^~~~ answer.code:37:7: error: invalid preprocessing directive #case 37 | # case 2: | ^~~~ answer.code:43:7: error: invalid preprocessing directive #case 43 | # case 3: | ^~~~ answer.code:54:7: error: invalid preprocessing directive #case 54 | # case 4: | ^~~~ answer.code:58:7: error: invalid preprocessing directive #print 58 | # print(case4_times, case4_res, case4_val) | ^~~~~ answer.code:68:7: error: invalid preprocessing directive #case 68 | # case 5: | ^~~~ answer.code:72:7: error: invalid preprocessing directive #Case 72 | # Case 8: (exgcd?) | ^~~~ answer.code:82:7: error: invalid preprocessing directive #case 82 | # case 6: | ^~~~ answer.code:98:7: error: invalid preprocessing directive #case 98 | # case 7: | ^~~~ answer.code:114:7: error: invalid preprocessing directive #print 114 | # print([case1_val, case2_val, case3_val, case4_val, case5_val, case6_val]) | ^~~~~ answer.code:1:1: error: ‘import’ does not name a type 1 | import math | ^~~~~~ answer.code:1:1: note: C++20 ‘import’ only available with ‘-fmodules-ts’, which is not yet enabled with ‘-std=c++20’ answer.code:84:5: error: ‘case6_val’ does not name a type 84 | case6_val = A | ^~~~~~~~~ answer.code:100:5: error: ‘case7_val’ does not name a type 100 | case7_val = 2 * A | ^~~~~~~~~