
절대값이 같으면 큰 수를 출력하기 때문에 별 다른 조치 없이 순회하면 된다.
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
import java.util.*;
public class Main {
static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
static StringTokenizer st;
static StringBuilder sb = new StringBuilder();
public static void main(String[] args) throws IOException {
int arr[] = new int[10];
int ps[] = new int[10]; // 누적합 배열
int sum = 0;
int result = 0;
for(int i=0;i<10;i++)
arr[i] = Integer.parseInt(br.readLine());
for(int i=0;i<10;i++){
sum+=arr[i];
ps[i] = sum; //누적 합 배열 초기화
}
for(int i=0;i<10;i++){ // 풀어쓴 과정 절대값 사용하지 않을 때
if(ps[0] == 100 || ps[i] ==100){
result = 100;
break;
}
if(ps[i]>100){
if(100-ps[i-1] == ps[i]-100 || 100-ps[i-1]>ps[i]-100)
result = ps[i];
else
result =ps[i-1];
break;
}
result = ps[i];
}
for(int i=0;i<10;i++){ // 절대값을 사용할 때
if(Math.abs(100-ps[i])<=min){
min = Math.abs(100-ps[i]);
result = ps[i];
}
}
sb.append(result);
System.out.println(sb);
br.close();
}
}