반응형
1. 문제
- [백준 C#] 8958번 OX 퀴즈 (C#) (https://www.acmicpc.net/problem/8958)
"OOXXOXXOOO"와 같은 OX퀴즈의 결과가 있다. O는 문제를 맞은 것이고, X는 문제를 틀린 것이다. 문제를 맞은 경우 그 문제의 점수는 그 문제까지 연속된 O의 개수가 된다. 예를 들어, 10번 문제의 점수는 3이 된다.
"OOXXOXXOOO"의 점수는 1+2+0+0+1+0+0+1+2+3 = 10점이다.
OX퀴즈의 결과가 주어졌을 때, 점수를 구하는 프로그램을 작성하시오.
2. 문제 포인트
- 케이스 수 입력 받기
- OX결과값을 입력 받기
- 'X'를 기준으로 문자열을 나눠 각 요소별로 'O'의 연속 개수를 카운팅하여 점수 계산
반응형
3. 전체 코드
using System;
using System.Collections.Generic;
namespace B2_08958번
{
internal class Program
{
static void Main(string[] args)
{
int cnt = int.Parse(Console.ReadLine());
int score = 0;
for (int i= 0; i < cnt; i++)
{
// 'X'를 기준으로 리스트를 나누기
List<string> ans = new List<string>(Console.ReadLine().Split('X'));
score = 0;
// 각 요소(연속된 'O'의 묶음)의 개수를 이용해 점수 계산
for (int j= 0; j < ans.Count; j++)
{
for (int k= 1; k <= ans[j].Length; k++)
{
score += k;
}
}
// 입력된 결과같에 대한 점수 출력
Console.WriteLine(score);
}
}
}
}
// 8958번 OX퀴즈
// https://www.acmicpc.net/problem/8958
반응형
'알고리즘 > C#' 카테고리의 다른 글
[백준 C#] 10818번 최소, 최대 (C#) (0) | 2022.09.19 |
---|---|
[백준 C#] 2562번 최댓값 (C#) (0) | 2022.09.19 |
[백준 C#] 4344번 평균은 넘겠지 (C#) (0) | 2022.09.18 |
[백준 C#] 1546번 평균 (C#) (0) | 2022.09.18 |
[백준 C#] 1110번 더하기 사이클 (C#) (1) | 2022.09.17 |