結果
問題 |
No.3068 Speedrun (Hard)
|
ユーザー |
|
提出日時 | 2025-03-22 02:12:50 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 1,851 ms / 2,000 ms |
コード長 | 1,724 bytes |
コンパイル時間 | 540 ms |
コンパイル使用メモリ | 82,232 KB |
実行使用メモリ | 76,172 KB |
最終ジャッジ日時 | 2025-03-22 02:12:58 |
合計ジャッジ時間 | 7,731 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 32 |
ソースコード
import sys input = lambda :sys.stdin.readline()[:-1] ni = lambda :int(input()) na = lambda :list(map(int,input().split())) yes = lambda :print("yes");Yes = lambda :print("Yes");YES = lambda : print("YES") no = lambda :print("no");No = lambda :print("No");NO = lambda : print("NO") ####################################################################### # r(z + w) = t - px - qy # Z = # z + w = n - x - y # rz + sw = t - px - qy # z + w = n - x - y # [-1, s] # (s - r) z == (px + qy - t) + s* (n - x - y) def solve(a, b, c, d, n, p, q, r, s, t): for x in range(a + 1): if t > p * x + q * b + r * c + s * d: continue for y in range(b + 1): A = p * x + q * y - t + s * (n - x - y) if p * x + q * y + r * c + s * d < t: continue if r != s: if A % (s - r) == 0: z = A // (s - r) w = n - x - y - z if 0 <= z <= c and 0 <= w <= d: return x, y, z, w else: A = t - p * x - q * y if A % r == 0: Z = A // r if 0 <= Z <= c + d and Z == n - x - y: z = min(Z, c) w = Z - z return x, y, z, w a,b,c,d,n = na() p,q,r,s,t = na() x,y,z,w = solve(a,b,c,d,n,p,q,r,s,t) # print(p * x + q * y + r * z + s * w) print(x,y,z,w) # *A, n = na() # *P, t = na() # for i in range(4): # aa = [A[p[i]] for i in range(4)] # pp = [P[p[i]] for i in range(4)] # res = solve(*aa, n, *p, t) # if res != None: # print(*[res[p[i]] for i in range(4)]) # exit()