

이거 많이 빡셌습니다. 앞 문제에서 언급한대로 불규칙성을 넣었는데,
첫번째로, 다 두글자인데 dz= 하나만 세글자라는 점, dz=과 z=이 겹쳐서, 잘못 짜면 이걸 같이 카운팅해버립니다.
앞선 문제의 교훈으로, 비교적 무식하고 우직한 방법으로 풀었습니다.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
int count = str.length();
for (int i = 0; i < str.length()-1; i++) {
if (str.charAt(i) == 'c') {
if (str.charAt(i+1) == '=') {
count--;
continue;
} else if (str.charAt(i+1) == '-') {
count--;
continue;
}
}
if (str.charAt(i) == 'l' && str.charAt(i+1) == 'j') {
count--;
continue;
}
if (str.charAt(i) == 'n' && str.charAt(i+1) == 'j') {
count--;
continue;
}
if (str.charAt(i) == 's' && str.charAt(i+1) == '=') {
count--;
continue;
}
if (str.charAt(i) == 'z' && str.charAt(i+1) == '=') {
if (i>0 && str.charAt(i-1) == 'd') {
count = count - 2;
i++;
continue;
} else {
count--;
continue;
}
}
if (str.charAt(i) == 'd' && str.charAt(i+1) == '-') {
count--;
continue;
}
}
System.out.println(count);
}
}'백준 문제풀이 > 문자열' 카테고리의 다른 글
| 1316. 그룹 단어 체커 (자바, Java) (0) | 2022.09.13 |
|---|---|
| 5622. 다이얼 (자바, Java) (0) | 2022.09.13 |
| 2908. 상수 (자바, JAVA) (0) | 2022.09.13 |
| 1152. 단어의 개수 (자바, Java) (0) | 2022.09.13 |
| 1157. 단어 공부 (자바, JAVA) (0) | 2022.09.13 |