알고리즘 문제/BOJ
2920번 음계
parkit
2019. 4. 5. 23:18
728x90
반응형
https://www.acmicpc.net/problem/2920
배열의 인덱스를 활용한 풀이 코드가 있어서 올려본다.
나는 vector로 저장해
while()으로 오름차순, 내림차순 순서대로 검사하여
중간에 맞으면 return 0; 하였다.
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 33 34 35 36 37 | #include <iostream> #include <queue> #include <stack> #include <cstdio> #include <vector> #include <cstring> #include <string> #include <math.h> #include <algorithm> #include <map> #include <set> #include <sstream> #include <tuple> #pragma warning(disable:4996) #pragma comment(linker, "/STACK:336777216") using namespace std; int main(void) { int n = 0, c = 0, a[8] = { 0, }; for (int i = 0; i < 8; i++) { scanf("%d", &a[i]); if (a[i] == i + 1) ++c; // 오름차순 else if (a[i] == 8 - i) --c; // 내림차순 } if (c == 8) printf("ascending\n"); else if (c == -8) printf("descending\n"); else printf("mixed\n"); return 0; } | cs |
728x90
반응형