[백준 / BOJ] 8958번 OX퀴즈 (C++, Python)◎ 자료구조와 알고리즘/백준(BOJ) 문제풀이2021. 9. 5. 13:30
Table of Contents
반응형
링크 : https://www.acmicpc.net/problem/8958
문제
문제 풀이
O가 연속되는 상황을 어떻게 셀 것인지가 관건인 문제다.
C++ 상세 풀이
더보기
for (int j = 0; j < len; j++)
{
if (arr[j] == 'O')
{
score += count;
count++;
}
else if (arr[j] == 'X')
count = 1;
}
count 변수는 점점 증가하는 점수를 위해 따로 할당한 변수다. X를 만난다면 1로 초기화되고, O를 만난다면 현재 크기를 score 변수에 더해주어 최종적인 점수를 계산한다.
Python 상세 풀이
더보기
for j in arr:
if j == 'O':
sum += count
count += 1
else:
count = 1
count 변수는 점점 증가하는 점수를 위해 따로 할당한 변수다. X를 만난다면 1로 초기화되고, O를 만난다면 현재 크기를 score 변수에 더해주어 최종적인 점수를 계산한다.
C++ 코드 전문
Python 코드 전문
소감
이런 부류의 문제를 처음 풀어본다면 아무래도 접근 방법이 생소할 수도 있을 것 같다. 나도 처음 풀 때 헤맸던 기억이 난다.
반응형
'◎ 자료구조와 알고리즘 > 백준(BOJ) 문제풀이' 카테고리의 다른 글
[백준 / BOJ] 15596번 정수 N개의 합 (C++, Python) (0) | 2021.09.05 |
---|---|
[백준 / BOJ] 4344번 평균은 넘겠지 (C++, Python) (0) | 2021.09.05 |
[백준 / BOJ] 1546번 평균 (C++, Python) (0) | 2021.09.05 |
[백준 / BOJ] 3052번 나머지 (C++, Python) (0) | 2021.09.05 |
[백준 / BOJ] 2577번 숫자의 개수 (C++, Python) (0) | 2021.09.04 |
@Reo :: 코드 아카이브
자기계발 블로그