문제 : 9명의 난쟁이 중 백설공주의 일곱 난쟁이를 구분하여라. 단, 7난쟁이의 키의 합은 100이다.
문제를 푸는 힌트 ) 9명중에 7명을 고르는 경우의 수는 9명중의 2명을 고르는 수와 같다. 아홉 난쟁이의 키의 총 합을 구한 다음에 2명의 키를 빼면 100이 되는 수를 구하면 된다.
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
32
33
34
35
36
|
public class SevenDwarfs {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int dwarfs = 9;
int allDwafs[] = new int[dwarfs];
int sum = 0;
for (int i = 0; i < dwarfs; i++) {
allDwafs[i] = sc.nextInt();
sum += allDwafs[i];
}
Arrays.sort(allDwafs);
for (int i = 0; i < dwarfs; i++) {
for (int j = i + 1; j < dwarfs; j++) {
if (sum - allDwafs[i] - allDwafs[j] == 100) {
for (int k = 0; k < dwarfs; k++) {
if(i == k || j == k) continue;
System.out.println(allDwafs[k]);
}
System.exit(0);
}
}
}
}
}
|
cs |
'프로그래밍 > Algorithm' 카테고리의 다른 글
백준 그리디알고리즘 - 로프 2217 (JAVA) (0) | 2019.07.17 |
---|---|
백준 그리디 알고리즘 - 거스름돈 5585 (JAVA) (0) | 2019.07.16 |
백준 그리디 알고리즘 - ATM 11399 (JAVA) (0) | 2019.07.15 |
백준 그리디 알고리즘 - 동전 문제 11047번(JAVA) (0) | 2019.07.15 |
알고리즘 소수 구하기(Java) (0) | 2019.07.10 |