結果

問題 No.859 路線A、路線B、路線C
ユーザー daku9640daku9640
提出日時 2019-08-09 23:41:05
言語 Python3
(3.12.2 + numpy 1.26.4 + scipy 1.12.0)
結果
AC  
実行時間 17 ms / 1,000 ms
コード長 688 bytes
コンパイル時間 108 ms
コンパイル使用メモリ 10,912 KB
実行使用メモリ 8,012 KB
最終ジャッジ日時 2023-09-26 22:10:43
合計ジャッジ時間 1,252 ms
ジャッジサーバーID
(参考情報)
judge12 / judge15
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 17 ms
7,864 KB
testcase_01 AC 17 ms
7,920 KB
testcase_02 AC 16 ms
7,812 KB
testcase_03 AC 16 ms
7,824 KB
testcase_04 AC 16 ms
7,864 KB
testcase_05 AC 16 ms
7,896 KB
testcase_06 AC 17 ms
7,884 KB
testcase_07 AC 16 ms
7,780 KB
testcase_08 AC 16 ms
7,952 KB
testcase_09 AC 16 ms
7,788 KB
testcase_10 AC 16 ms
8,012 KB
testcase_11 AC 16 ms
7,820 KB
testcase_12 AC 16 ms
7,812 KB
testcase_13 AC 16 ms
7,820 KB
testcase_14 AC 16 ms
7,856 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

def solve():
    x, y, z = map(int, input().split())
    m = {'A':x, 'B':y, 'C':z}
    m2 = {"A":min(y, z), "B":min(x, z), "C":min(x, y)}
    s0, t0 = input().split()
    t0 = int(t0)
    s1, t1 = input().split()
    t1 = int(t1)
    (s0, t0), (s1, t1) = sorted([[s0, t0], [s1, t1]])
    X = {"A", "B", "C"} - {s0, s1}
    X = X.pop()
    if s0 == s1:
        ans = [0] * 2
        ans[0] = abs(t0 - t1)
        ans[1] = t0 + m2[s1] + m[s1] - t1
        print(min(ans))
    else:
        ans = [0] * 4
        ans[0] = t0 - 1 + t1
        ans[1] = m[s0] - t0 + m[s1] - t1 + 1
        ans[2] = t0 + m[X] + m[s1] - t1
        ans[3] = m[s0] - t0 + m[X] + t1
        print(min(ans))
solve()
0