๋ฌธ์ (์ถ์ฒ: https://www.acmicpc.net/problem/1972)
< ๋๋ผ์ด ๋ฌธ์์ด >
๋ฌธ์ ํ์ด
0-์, 1-์... N-2์๊น์ง ๊ฐ๊ฐ ๊ตฌํ ํ ์ ์ผํ์ง ์ ์ผํ์ง ์์์ง ํ๋จํ๋ค.
my solution (Java)
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.HashSet;
import java.util.Set;
public class _1972_ { // ๋๋ผ์ด ๋ฌธ์์ด
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
String str = "";
Set<String> set = new HashSet<>();
boolean flag = false;
while (!(str = bf.readLine()).equals("*")) {
flag = false;
for (int i = 1; i < str.length(); i++) {
for (int j = 0; j < str.length(); j++) {
if (j + i < str.length()) {
String s = str.charAt(j) + "" + str.charAt(j + i);
if (set.contains(s)) {
flag = true;
break;
} else {
set.add(s);
}
}
}
set.clear();
if (flag)
break;
}
if (flag)
bw.write(str + " is NOT surprising.\n");
else
bw.write(str + " is surprising.\n");
}
bw.flush();
}
}
Main
๋ณ์)
str : ๋ฌธ์์ด
set : D-์ ์ ์ฅ
flag : ์ ์ผ ์ฌ๋ถ
- ๋ฌธ์์ด(str) ์ ๋ ฅ (*์๋ ๋๊น์ง ์ ๋ ฅ ๊ณ์ ๋ฐ๊ธฐ)
- D-์์ ๊ตฌํ ํ set์ ์๋ ๋ฌธ์์ด์ธ์ง ์๋์ง ํ๋จ
: set์ ์๋ ๋ฌธ์์ด์ด๋ผ๋ฉด ์ข ๋ฃ
: set์ ์์ง ์์ ๋ฌธ์์ด์ด๋ผ๋ฉด ์ถ๊ฐ ํ ๊ณ์
- flag ์ฌ๋ถ์ ๋ฐ๋ผ ์ ๋ต ์ถ๋ ฅ
'๐Algorithm > ๐ฅBaekjoon' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Baekjoon] 1946_์ ์ ์ฌ์ (1) | 2023.10.16 |
---|---|
[Baekjoon] 3077_์์ง์๋ (0) | 2023.10.13 |
[Baekjoon] 5568_์นด๋ ๋๊ธฐ (0) | 2023.10.11 |
[Baekjoon] 11507_์นด๋์ ํธ (0) | 2023.10.10 |
[Baekjoon] 25192_์ธ์ฌ์ฑ ๋ฐ์ ๊ณฐ๊ณฐ์ด (0) | 2023.10.09 |