結果
問題 |
No.968 引き算をして門松列(その3)
|
ユーザー |
|
提出日時 | 2022-08-16 17:09:32 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 205 ms / 2,000 ms |
コード長 | 1,498 bytes |
コンパイル時間 | 174 ms |
コンパイル使用メモリ | 82,644 KB |
実行使用メモリ | 80,292 KB |
最終ジャッジ日時 | 2024-10-03 07:55:17 |
合計ジャッジ時間 | 2,461 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 10 |
ソースコード
t = int(input()) abc = [[int(i) for i in input().split()] for j in range(t)] for i in range(t): ans = 10**20 a,b,c = abc[i][:3] x,y,z = abc[i][3:]#x:c,y:a,z,b #大きい順a,c,b aa,bb,cc = a,b,c tmp = 0 t1,t2 = 0,0 if cc <= bb: t1 = abs((bb+1)-cc)#a,b tmp += t1*x cc = bb+1 if aa <= cc: t2 = abs((cc+1)-aa)#b,c tmp += t2*y aa = bb+1 if t1 < a and t1+t2 < b and t2 < c: ans = min(tmp,ans) #大きい順b,c,a aa,bb,cc = a,b,c tmp = 0 t1,t2 = 0,0 if cc <= aa: t1 = abs((aa+1)-cc)#a,b tmp += t1*x cc = aa+1 if bb <= cc: t2 = abs((cc+1)-bb)#a,c tmp += t2*z bb = cc+1 if t1+t2 < a and t1 < b and t2 < c: ans = min(tmp,ans) #大きい順b,a,c aa,bb,cc = a,b,c tmp = 0 t1,t2 = 0,0 if aa <= cc: t1 = abs((cc+1)-aa)#c,b tmp += t1*y aa = cc+1 if bb <= aa: t2 = abs((aa+1)-bb)#a,c tmp += t2*z bb = aa+1 if t2 < a and t1 < b and t1+t2 < c: ans = min(tmp,ans) #大きい順c,a,b aa,bb,cc = a,b,c tmp = 0 t1,t2 = 0,0 if aa <= bb: t1 = abs((bb+1)-aa)#b,c tmp += t1*y aa = bb+1 if cc <= aa: t2 = abs((aa+1)-cc)#a,b tmp += t2*x cc = aa+1 if t2 < a and t1+t2 < b and t1 < c: ans = min(tmp,ans) if ans == 10**20: print(-1) else: print(ans)