백준
백준 2851 슈퍼 마리오(Java)
Park DJ
2023. 1. 16. 20:43
https://www.acmicpc.net/problem/2851
2851번: 슈퍼 마리오
첫째 줄에 마리오가 받는 점수를 출력한다. 만약 100에 가까운 수가 2개라면 (예: 98, 102) 마리오는 큰 값을 선택한다.
www.acmicpc.net
해석 및 팁
이 문제는 먼저 버섯의 값 10개를 먼저 입력받습니다. 그 다음 값을 더하다가 100을 넘었을때 그 값과 그 앞의 값을 비교해서 100과의 차이가 더 적은것을 골라 출력하면 됩니다. 차이가 같은 경우에는 큰 값을 출력하면 됩니다.
Java 코드
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int[] arr = new int[10];
int sum = 0;
for(int i = 0; i < 10; i++) {
arr[i] = sc.nextInt(); //벼섯값 입력
}
for(int i = 0; i < 10; i++) {
sum += arr[i];
if(sum >= 100) {
if(sum-100 <= 100-(sum-arr[i])) break; //100에 가까운값 찾기
else {
sum = sum-arr[i];
break;
}
}
}
System.out.println(sum);
}
}