알고리즘/백준
백준 2309 일곱난쟁이
고구마와 감자
2022. 2. 17. 21:27
https://www.acmicpc.net/problem/2309
2309번: 일곱 난쟁이
아홉 개의 줄에 걸쳐 난쟁이들의 키가 주어진다. 주어지는 키는 100을 넘지 않는 자연수이며, 아홉 난쟁이의 키는 모두 다르며, 가능한 정답이 여러 가지인 경우에는 아무거나 출력한다.
www.acmicpc.net
브루트포스 기본 문제..
이미 풀이를 적어놨던 문제인데
다시 보고 혼자 풀려다 못 풀어서 다시 기존 풀이 보고 다시 공부함ㅜㅜ
public class Boj2309_일곱난쟁이 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = 9;
int[] dwarves = new int[n];
int sum = 0;
for (int i = 0; i < dwarves.length; i++) {
dwarves[i] = Integer.parseInt(br.readLine());
sum += dwarves[i];
}
/*
[idea]
먼저 숫자를 배열에 집어넣고, 9개의 합을 구한다.
9개의 합에서 2개를 뺀 결과가 100인 경우를 찾고
그 2개를 제외한 7개를 오름차순 정렬한다.
*/
Arrays.sort(dwarves);
for (int i = 0; i < n; i++) {
for (int j = i+1; j < n; j++) {
if(sum - dwarves[i] - dwarves[j] == 100) {
for (int k = 0; k < n; k++) {
if (k == i || k== j) {
continue;
}
System.out.println(dwarves[k]);
}
// 반복문을 종료하지 않으면 다른 정답을 출력할 수 있다.
System.exit(0);
}
}
}
}
}