출처 : 반크_세계유산 경복궁
문제]
"OOXXOXXOOO"와 같은 OX퀴즈의 결과가 있다. O는 문제를 맞은 것이고, X는 문제를 틀린 것이다. 문제를 맞은 경우 그 문제의 점수는 그 문제까지 연속된 O의 개수가 된다. 예를 들어, 10번 문제의 점수는 3이 된다.
"OOXXOXXOOO"의 점수는 1+2+0+0+1+0+0+1+2+3 = 10점이다.
OX퀴즈의 결과가 주어졌을 때, 점수를 구하는 프로그램을 작성하시오.
입력
첫째 줄에 테스트 케이스의 개수가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, 길이가 0보다 크고 80보다 작은 문자열이 주어진다. 문자열은 O와 X만으로 이루어져 있다.
출력
각 테스트 케이스마다 점수를 출력한다.
예제 입력 1
5
OOXXOXXOOO
OOXXOOXXOO
OXOXOXOXOXOXOX
OOOOOOOOOO
OOOOXOOOOXOOOOX
예제 출력 1
10
9
7
55
30
출처 : 백준_8958번
참고풀이]
#include <stdio.h>
#include <string.h> //strlen()
int main()
{
int N;//테스트 케이스의 개수 입력변수
char Str[100]={'\0'};//테스트 케이스 문자열 변수
int Result;//테스트 케이스의 점수 합변수
int O;//테스트 케이스의 맞은 점수변수
int i,j;//인덱스 또는 반복변수
scanf("%d",&N);
for(i=1;i<=N;i++)
{
scanf("%s",Str);
if(strlen(Str)>0 && strlen(Str)<80)
{
O=0; Result=0;
for(j=0;j<strlen(Str);j++)
{
if(Str[j]=='O') O++; else O=0;
Result+=O;
}
//결과출력
printf("%d\n",Result);
}
}
return 0;
}
참고풀이 결과]
대한민국의 아름다운 영토, 독도의 가을
'프로그램 > C언어 1000제' 카테고리의 다른 글
C언어 167제] 2009/2010 COCI 크로아티아 정보학 공개 경쟁 #1 알람시계 (1) | 2024.09.17 |
---|---|
C언어 166제] solved.ac class1 알파벳 찾기 (0) | 2024.09.12 |
C언어 164제] 2006/2007 COCI 크로아티아 정보학 공개 경쟁 #1 나머지 (0) | 2024.09.12 |
C언어 163제] 2009/2010 COCI 크로아티아 정보학 공개 경쟁 #1 음계 (0) | 2024.09.12 |
C언어 162제] 2011년 ICPC 북아메리카 뉴욕지역예선 A번 문자열 반복 (0) | 2024.09.11 |
댓글