본문 바로가기
알고리즘(Java)/Array

[알고리즘]Array(배열) 7. 점수계산 - 시험문제의 채점 결과가 주어졌을 때, 총 점수 계산하기

by snowballchoi 2021. 7. 24.

7. 점수계산

시험문제의 채점 결과가 주어졌을 때, 총 점수를 계산하는 프로그램

1. 1번 문제가 맞는 경우에는 1점으로 계산한다. 
2. 앞의 문제에 대해서는 답을 틀리다가 답이 맞는 처음 문제는 1점으로 계산한다.
3. 또한, 연속으로 문제의 답이 맞는 경우에서 두 번째 문제는 2점, 세 번째 문제는 3점, ..., K번째 문제는 K점으로 계산한다.
4. 틀린 문제는 0점으로 계산한다.

입력) 첫째 줄에 문제의 개수 N (1 ≤ N ≤ 100)이 주어집니다.
둘째 줄에는 N개 문제의 채점 결과를 나타내는 0 혹은 1이 빈 칸을 사이에 두고 주어집니다.
출력) 첫째 줄에 입력에서 주어진 채점 결과에 대하여 가산점을 고려한 총 점수를 출력합니다.

 

 

import java.util.Scanner;

public class Main {

	public static int solution(int n, int[] arr) {
		int answer = 0, cnt = 0;
		
		for (int i=0; i<n; i++) {
			if (arr[i]==1) {
				cnt++;
				answer += cnt; // 점수 누적
			}
			else cnt = 0; // 0으로 초기화
		}
		return answer;
	}
	
	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
		int n = scanner.nextInt();
		int[] arr = new int[n];
		for (int i=0; i<n; i++) {
			arr[i] = scanner.nextInt();
		}
		System.out.println(solution(n, arr));
	}

}

 

결과

댓글