https://www.acmicpc.net/problem/10675
그래프문제인 것처럼 보이지만 전혀 상관없고 그저 하나의 루틴에서 길이 있는지 확인하고
해당하는 최소비용을 구하면 된다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | #include <iostream> using namespace std; int main() { int a, b, n; cin >> a >> b >> n; int ans = 1000000000; for (int i = 0; i < n; i++) { int u, v; cin >> u >> v; int stage; int go = 0; for (int j = 0; j < v; j++) { cin >> stage; if (stage == a) go = 1; else if (go==1&&stage == b) go = 2; if (go == 2) { if (ans > u) ans = u; } } } if (ans == 1000000000) ans = -1; cout << ans << '\n'; } | cs |
'알고리즘 > 구현 및 시뮬레이션' 카테고리의 다른 글
[B10657] - Cow Jog (0) | 2018.09.23 |
---|---|
[B9573] - Combination Lock (0) | 2018.09.23 |
[B10752] - Cow Hopscotch (0) | 2018.09.22 |
[B10025] - 게으른 백곰 (0) | 2018.09.22 |
[B10656] - 십자말풀이 (0) | 2018.09.21 |