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 38 39 40 41 42 43 44 45 46 47 48 | #include <iostream> #include <string> using namespace std; int main() { string s; while (cin >> s) { //입력 무한 루프 if (s == "*") //*나오면 종료 return 0; bool check = true; for (int p = 1; p < s.length()-1; p++) { char a, b; for (int i = 0; i < s.length()-p; i++) { a = s[i]; b = s[i + p]; if (i + p == s.length() - 1) { continue; } for (int k = i+1; k < s.length() - p; k++) { if (a == s[k] && b == s[k + p]) { // 하나라도 똑같은 배열있으면 바로 놀라운문자가 아니므로 false 입력후 반복문 탈출 check = false; break; } } if (!check) { break; } } if (!check) { break; } } for (int j = 0; j < s.length(); j++) { cout << s[j]; } if (check) { cout << " is surprising." << endl; } if (!check) { cout << " is NOT surprising." << endl; } } return 0; } | cs |
문제 출처:https://www.acmicpc.net/problem/1972
문제 피드백,질문 댓글로 부탁드려요~!
'알고리즘 > BAEKJOON' 카테고리의 다른 글
백준 10451번 순열 사이클 (0) | 2018.11.08 |
---|---|
백준 1718번 암호 (0) | 2018.11.06 |
백준 4334번 평균은 넘겠지 (0) | 2018.11.01 |
백준 1411번 비슷한 단어 (0) | 2018.11.01 |
백준 10545번 뚜기뚜기메뚜기 (0) | 2018.11.01 |