結果
問題 | No.859 路線A、路線B、路線C |
ユーザー | 沙耶花 |
提出日時 | 2019-08-09 21:37:56 |
言語 | C++14 (gcc 12.3.0 + boost 1.83.0) |
結果 |
AC
|
実行時間 | 2 ms / 1,000 ms |
コード長 | 1,025 bytes |
コンパイル時間 | 1,596 ms |
コンパイル使用メモリ | 166,744 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-07-19 11:30:59 |
合計ジャッジ時間 | 2,055 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 2 ms
5,248 KB |
testcase_01 | AC | 2 ms
5,376 KB |
testcase_02 | AC | 2 ms
5,376 KB |
testcase_03 | AC | 2 ms
5,376 KB |
testcase_04 | AC | 2 ms
5,376 KB |
testcase_05 | AC | 2 ms
5,376 KB |
testcase_06 | AC | 2 ms
5,376 KB |
testcase_07 | AC | 1 ms
5,376 KB |
testcase_08 | AC | 2 ms
5,376 KB |
testcase_09 | AC | 1 ms
5,376 KB |
testcase_10 | AC | 1 ms
5,376 KB |
testcase_11 | AC | 2 ms
5,376 KB |
testcase_12 | AC | 2 ms
5,376 KB |
testcase_13 | AC | 1 ms
5,376 KB |
testcase_14 | AC | 2 ms
5,376 KB |
ソースコード
#include <bits/stdc++.h> using namespace std; #define modulo 1000000007 #define mod(mod_x) ((((long long)mod_x)+modulo)%modulo) #define Inf 100000000000 int main(){ long long A,B,C; cin>>A>>B>>C; char s1,s2; long long t1,t2; cin>>s1>>t1; cin>>s2>>t2; long long ans = Inf; if(s1==s2){ if(t1>t2)swap(t1,t2); ans = abs(t1-t2); if(s1=='A'){ ans = min(ans,min(B+1,C+1)+t1-1+(A-t2)); } else if(s1=='B'){ ans = min(ans,min(C+1,A+1)+t1-1+(B-t2)); } else{ ans = min(ans,min(A+1,B+1)+t1-1+(C-t2)); } } else{ if(s1>s2){ swap(s1,s2); swap(t1,t2); } ans = t1+t2-1; if(s1=='A'){ if(s2=='B'){ ans = min(ans,(A-t1)+(B-t2)+1); ans = min(ans,t1-1 + (B-t2) + C+1); ans = min(ans,(A-t1) + t2-1 + C+1); } else{ ans = min(ans,A-t1+C-t2+1); ans = min(ans,t1-1+(C-t2)+B+1); ans = min(ans,A-t1+t2-1+B+1); } } else{ ans = min(ans,B-t1+C-t2+1); ans = min(ans,t1-1+C-t2+A+1); ans = min(ans,B-t1+t2-1+A+1); } } cout<<ans<<endl; return 0; }