結果

問題 No.967 引き算をして門松列(その2)
ユーザー rlangevin
提出日時 2023-06-04 18:16:09
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 222 ms / 2,000 ms
コード長 663 bytes
コンパイル時間 256 ms
コンパイル使用メモリ 82,596 KB
実行使用メモリ 78,736 KB
最終ジャッジ日時 2024-12-29 03:38:40
合計ジャッジ時間 2,899 ms
ジャッジサーバーID
(参考情報)
judge2 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2
other AC * 10
権限があれば一括ダウンロードができます

ソースコード

diff #

inf = 10 ** 20
def f(t1, t2, t3):
    val = 0
    ma = t1[0]
    if t2[0] < ma:
        ma = t2[0]
    else:
        ma -= 1
        val += t2[1] * (t2[0] - ma)
        
    if t3[0] < ma:
        ma = t3[0]
    else:
        ma -= 1
        val += t3[1] * (t3[0] - ma)
        
    if ma <= 0:
        return inf
    else:
        return val 

T = int(input())
for _ in range(T):
    A, B, C, X, Y, Z = map(int, input().split())
    ans = inf
    ta, tb, tc = (A, X), (B, Y), (C, Z)
    ans = min(ans, f(tb, ta, tc))
    ans = min(ans, f(tb, tc, ta))
    ans = min(ans, f(tc, ta, tb))
    ans = min(ans, f(ta, tc, tb))
    print(ans) if ans != inf else print(-1)
0