티스토리 뷰

알고리즘/백준

[BAEKJOON]17389 보너스 점수

응애~ 개발자 2023. 12. 26. 00:16
728x90
반응형

문제 요약

  • 알고리즘 분류:  구현
  • 난이도: Bronze2
  • 문제내용:
    •  i 번 문제의 기본 점수는 i 점이다
    •  '보너스 점수'라는 값이 존재한다. 이는 처음에는 0점이다.
      • 문제를 맞히면 그 때의 '보너스 점수'를 획득하고, '보너스 점수'의 값이 1점 증가한다.
      • 문제를 틀리면 '보너스 점수'를 얻지 못하고, '보너스 점수'의 값이 0점으로 초기화된다.
  • 사이트: https://www.acmicpc.net/problem/17389
 

17389번: 보너스 점수

숭고한 알고리즘 캠프 퀴즈 타임이 시작되었다! PS 기초, 동적 계획법, 파라메트릭 서치, 욱제의 생일, 탐색, 그리디, 최단경로 알고리즘, 구데기컵, 서로소 집합, 최소 신장 트리, 최소 공통 조상,

www.acmicpc.net

 

문제풀이

 이번 문제는 일반적인 구현 문제입니다. 'OX' 점수를 받는데, i번째 문제를 맞히면 i점을 획득하며 보너스 점수를 고려해야 하는데, 이는 어렵지 않습니다.

 i번째 문제를 맞췄을 때 획득한 점수는 배열의 위치에 1을 더해주면 됩니다. 보너스 점수는 보너스 count 변수를 선언하여 맞추면 +1로 증가하고, 틀리면 0으로 초기화합니다. 이후, 맞추면 배열의 위치에서 1과 보너스 count를 더하고, 틀릴 경우 count를 초기화하면 됩니다.

Code

Python

N = int(input())
S = input()

i = 0
result = 0
for index in range(N):
    if S[index] == 'O':
        # 'O' 일때 연산하고 보너스 점수를 늘린다.
        result += index + 1 + i
        i += 1
    else:
        # 'X'일때 보너스 점수 초기화 한다.
        i = 0
        
print(result)

 

Java

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;


public class Main {
	
	
	public static void main(String[] args) throws IOException {
		
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		
		int N = Integer.parseInt(br.readLine());
		String S = br.readLine();
		int result = 0;
		int i = 0;
		
		for(int index = 0; index < N; index++) {
			//'O' 일때 연산하고 보너스 점수를 늘린다.
			if(S.charAt(index) == 'O') {
				result += index + i++ + 1;
			}else {
				// 'X'일때 보너스 점수 초기화 한다.
				i = 0;
			}
		}
		
		System.out.println(result);
		
	}
	
}

 

728x90
반응형

'알고리즘 > 백준' 카테고리의 다른 글

[BAEKJOON]16165 걸그룹 마스터 준석이  (1) 2024.01.05
[BAEKJOON]1920 수 찾기  (3) 2024.01.04
[BAEKJOON]17269 이름궁합 테스트  (0) 2023.12.23
[BAEKJOON]10539 수빈이와 수열  (2) 2023.09.01
[BAEKJOON]15969 행복  (0) 2023.08.27
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/10   »
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
글 보관함