結果
| 問題 |
No.859 路線A、路線B、路線C
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2024-01-07 13:54:37 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 36 ms / 1,000 ms |
| コード長 | 1,073 bytes |
| コンパイル時間 | 489 ms |
| コンパイル使用メモリ | 82,324 KB |
| 実行使用メモリ | 53,820 KB |
| 最終ジャッジ日時 | 2024-09-27 19:23:21 |
| 合計ジャッジ時間 | 1,624 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 12 |
ソースコード
x, y, z = map(int, input().split())
si, st = input().split()
ti, tt = input().split()
st = int(st)
tt = int(tt)
if si == 'A':
if ti == 'A':
st, tt = min(st, tt), max(st, tt)
elif si == 'B':
if ti == 'A':
si, ti = ti, si
st, tt = tt, st
elif ti == 'B':
st, tt = min(st, tt), max(st, tt)
elif si == 'C':
if ti == 'A' or ti == 'B':
si, ti = ti, si
st, tt = tt, st
elif ti == 'C':
st, tt = min(st, tt), max(st, tt)
if si == 'A':
if ti == 'A':
ans = min(tt - st, st + min(y, z) + x - tt)
elif ti == 'B':
ans = min(st + tt - 1, x - st + 1 + y - tt, st + z + y - tt, x - st + z + tt)
elif ti == 'C':
ans = min(st + tt - 1, x - st + 1 + z - tt, st + y + z - tt, x - st + y + tt)
elif si == 'B':
if ti == 'B':
ans = min(tt - st, st + min(x, z) + y - tt)
elif ti == 'C':
ans = min(st + tt - 1, y - st + 1 + z - tt, st + x + z - tt, y - st + x + tt)
elif si == 'C':
if ti == 'C':
ans = min(tt - st, st + min(x, y) + z - tt)
print(ans)