結果

問題 No.966 引き算をして門松列(その1)
ユーザー stngstng
提出日時 2022-08-16 15:19:41
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 182 ms / 2,000 ms
コード長 1,193 bytes
コンパイル時間 286 ms
コンパイル使用メモリ 82,264 KB
実行使用メモリ 80,008 KB
最終ジャッジ日時 2024-10-03 06:18:40
合計ジャッジ時間 1,876 ms
ジャッジサーバーID
(参考情報)
judge4 / judge2
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 56 ms
63,232 KB
testcase_01 AC 58 ms
62,976 KB
testcase_02 AC 54 ms
62,976 KB
testcase_03 AC 56 ms
63,488 KB
testcase_04 AC 182 ms
80,008 KB
testcase_05 AC 173 ms
79,960 KB
testcase_06 AC 164 ms
79,744 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

from re import A


t = int(input())
abc = [[int(i) for i in input().split()] for j in range(t)]


for i in range(t):
    ans = 10**10
    a,b,c = abc[i]
    #aがmax
    if a > 2:
        tmp = 0
        A,B,C = a,b,c
        if a <= c:
            tmp += abs(a-1-c)
            C = a-1
        if C <= b:
            if C - 1 <= 0:
                tmp += 10**10
            tmp += abs(C-1-b)
        
        ans = min(ans,tmp)

    #bがmax
    if b > 2:
        tmp = 0
        A,B,C = a,b,c
        if a < c:
            A = c
            C = a
        #print(A,B,C,"abc")
        if B <= A:
            tmp += abs(B-1-A)
            A = B-1
        if A <= C:
            if A - 1 <= 0:
                tmp += 10**10
            tmp += abs(A-1-c)
        ans = min(tmp,ans)
        #print(tmp,"tmp",i)

    if c > 2:
        #cがmax
        tmp = 0
        A,B,C = a,b,c
        if c <= a:
            tmp += abs(c-1-a)
            A = c-1
        
        if A <= b:
            if A - 1 <= 0:
                tmp += 10**10
            tmp += abs(A-1-b)
        #print(A,b,"aaab",tmp)

        ans = min(tmp,ans)
    if ans != 10**10:
        print(ans)
    else:
        print(-1)
    
0