結果
問題 | No.3068 Speedrun (Hard) |
ユーザー |
👑 ![]() |
提出日時 | 2025-03-24 19:29:36 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,969 bytes |
コンパイル時間 | 325 ms |
コンパイル使用メモリ | 82,192 KB |
実行使用メモリ | 67,984 KB |
最終ジャッジ日時 | 2025-03-24 19:29:55 |
合計ジャッジ時間 | 16,893 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 6 WA * 7 TLE * 1 -- * 18 |
ソースコード
"""cR + dS = tremc+d = nremcR + (nrem-c)S = trem(R-S)c = trem-nremS"""import sysimport mathdef extGCD(a,b):g = math.gcd(a,b)x, y, u, v = 1, 0, 0, 1while b:k = a // bx -= k * uy -= k * vx, u = u, xy, v = v, ya, b = b, a % breturn g ,x, ydef extinv(a,mod):g,x,y = extGCD(a,mod)if g != 1:return -1if x > 0:return xelse:return x + mod# X^K = Y (mod M)from math import ceil, sqrtdef BsGs(X,Y,M):dic = {}dic[1] = 0sq = ceil(M**0.5)#baby-stepZ = 1for i in range(sq):Z = Z * X % Mif Z not in dic:dic[Z] = i+1if Y in dic:return dic[Y]#giant-stepR = extinv(Z,M)for i in range(1,sq+1):Y = Y * R % Mif Y in dic:return dic[Y] + i * sqreturn -1def crt2(b1,m1,b2,m2):g,p,q = extGCD(m1,m2)if b1 % g != b2 % g:return 0,0return ( b1 + m1 * ((b2-b1)//g) * p ) % (m1*m2//g) , m1*m2//gdef crt(b,m):assert len(b) == len(m)nb,nm = 0,1for i in range(len(b)):nb,nm = crt2(nb,nm,b[i],m[i])if (nb,nm) == (0,0):return 0,0return nb,nmA,B,C,D,N = map(int,input().split())P,Q,R,S,T = map(int,input().split())g = math.gcd(R,S)_,X,Y = extGCD(R,S)for a in range(A+1):for b in range(B+1):trem = T - a * P - b * Qif trem % g != 0:continuenrem = N - a - b# (R-S)c = trem-nremSif R != S:if (trem-nrem*S) % (R-S) != 0:continuec = (trem-nrem*S) // (R-S)d = nrem - celse:c = min(C, trem//R)d = nrem-cif (a + b + c + d == N) and 0 <= c <= C and 0 <= d <= D and a*P + b*Q + c*R + D*S == T:print (a,b,c,d)sys.exit()