티스토리 뷰
문제 : 입력으로 주어지는 문자열에서 연속으로 3개의 문자가 JOI 또는 IOI인 곳이 각각 몇 개 있는지 구하는 프로그램을 작성하시오. 문자열을 알파벳 대문자로만 이루어져 있다.
풀이:
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
|
#include<stdio.h>
#include<string.h>
int main(){
char ch[100000];
int j_c = 0, i_c = 0;
scanf("%s", ch);
int len = strlen(ch);
for (int i = 0; i <= len; i++){
if (ch[i] == 'I'){
if (ch[i + 1] == 'O'){
if (ch[i + 2] == 'I'){
i_c++;
}
}
}
}
for (int j = 0; j <= len; j++){
if (ch[j] == 'J'){
if (ch[j + 1] == 'O'){
if (ch[j + 2] == 'I'){
j_c++;
}
}
}
}
printf("%d\n%d\n", j_c, i_c);
}
|
cs |
문자열을 배열로 받는다 - > 배열의 길이를 구한 후 배열의 길이만큼 for문을 두개(IOI,JOI)돌리며
JOI와 IOI의 개수를 i_c와 j_c에 받은 후 마지막에 그 개수를 출력한다.
'백준' 카테고리의 다른 글
BOJ]15917번_노솔브 방지문제야!! (0) | 2019.05.27 |
---|---|
BOJ]14491번_9진수 (0) | 2019.05.27 |
BOJ]10039_평균 점수 (0) | 2019.05.06 |
BOJ]8958_OX퀴즈 (0) | 2019.05.06 |
BOJ]2920_음계 (0) | 2019.05.06 |
댓글