백준 8958번 문제 링크
문제에서 파악해야 할 핵심요소 및 마인드맵
- 긴 문제를 어떻게 받아올/글자 하나하나 읽어올 것인가?
- 연속되는 정보는 어떻게 받아올 것인가?
주의사항
- string형이 더라도 char[]형식으로 받아온다.
- char[]길이는 strlen 형식으로 받아온다.(lenof 형식 아님!) + 이럴 때 string.h 포함하기
- 연속적인 조건 확인하기 : score =1로 세팅후에 조건이 나오면 적립하는 방식 / 원상태로 돌려놓는 방식도 포함한다.
#include <stdio.h>
#include <string.h>
char s[80];
int main(){
int num, score, sum;
scanf("%d", &num);
for (int i = 0; i < num; i++){
sum = 0;
score = 1;
scanf("%s", &s);
for (int j = 0; j < strlen(s); j++){
if (s[j] == 'O'){
sum += score;
score++;
}
if (s[j] == 'X')
score = 1;
}
printf("%d\n", sum);
}
}
'Coding > Basic' 카테고리의 다른 글
[Basic] 숫자 길이 및 배열 전환 함수 살펴보기 c언어 (0) | 2019.09.28 |
---|---|
[백준] 2577번: 숫자의 개수 (2) | 2019.09.28 |
[Basic] 출력 계속 받는 방법 정리 (0) | 2019.09.11 |
[백준]2920번: 음계 c언어 (0) | 2019.09.10 |
[백준] 3052번: 나머지 c++ (0) | 2019.09.10 |