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

+ Recent posts