Competition/codeforces
Codeforces Round #549 (Div. 2) A. The Doors
shyram
2019. 4. 1. 18:16
A. The Doors
https://codeforces.com/contest/1143/problem/A
해석을 잘 못해서 한번 틀렸다. 막상 이해하니 너무 쉬운 문제였다.
0과 1은 각각 left, right에 있는 문을 의미하는데 모든 left 또는 right의 문을 열어야 탈출 가능하다.
따라서 배열을 받은 후, 뒤에서부터 검사하여 마지막 0과 1의 위치 중에 작은 index값을 출력하면 된다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | #include <bits/stdc++.h> using namespace std; int n, arr[200001]; int main() { ios::sync_with_stdio(0); cin.tie(NULL); cout.tie(NULL); cin >> n; for (int i = 1; i <= n; i++) cin >> arr[i]; int minv = arr[n]; for(int i=n-1; i>0; i--) if (minv != arr[i]) { cout << i; break; } return 0; } | cs |