반응형
SMALL
문제 정보
문제명 - 백설 공주와 일곱 난쟁이
난이도 - 브론즈 II
문제 번호 - 3040번
문제 링크
3040번: 백설 공주와 일곱 난쟁이
매일 매일 일곱 난쟁이는 광산으로 일을 하러 간다. 난쟁이가 일을 하는 동안 백설공주는 그들을 위해 저녁 식사를 준비한다. 백설공주는 의자 일곱개, 접시 일곱개, 나이프 일곱개를 준비한다.
www.acmicpc.net
문제
매일 매일 일곱 난쟁이는 광산으로 일을 하러 간다. 난쟁이가 일을 하는 동안 백설공주는 그들을 위해 저녁 식사를 준비한다. 백설공주는 의자 일곱개, 접시 일곱개, 나이프 일곱개를 준비한다.
어느 날 광산에서 아홉 난쟁이가 돌아왔다. (왜 그리고 어떻게 아홉 난쟁이가 돌아왔는지는 아무도 모른다) 아홉 난쟁이는 각각 자신이 백설공주의 일곱 난쟁이라고 우기고 있다.
백설공주는 이런 일이 생길 것을 대비해서, 난쟁이가 쓰고 다니는 모자에 100보다 작은 양의 정수를 적어 놓았다. 사실 백설 공주는 공주가 되기 전에 매우 유명한 수학자였다. 따라서, 일곱 난쟁이의 모자에 쓰여 있는 숫자의 합이 100이 되도록 적어 놓았다.
아홉 난쟁이의 모자에 쓰여 있는 수가 주어졌을 때, 일곱 난쟁이를 찾는 프로그램을 작성하시오. (아홉 개의 수 중 합이 100이 되는 일곱 개의 수를 찾으시오)
입력
총 아홉개 줄에 1보다 크거나 같고 99보다 작거나 같은 자연수가 주어진다. 모든 숫자는 서로 다르다. 또, 항상 답이 유일한 경우만 입력으로 주어진다.
출력
일곱 난쟁이가 쓴 모자에 쓰여 있는 수를 한 줄에 하나씩 출력한다.
예제 입력/출력
예제 입력 예제 출력 7
8
10
13
15
19
20
23
257
8
10
13
19
20
238
6
5
1
37
30
28
22
368
6
5
1
30
28
22
알고리즘 분류
● 브루트포스 알고리즘
소스코드
package Lv1_Bronze;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
/**
* @author HanHoon
* @category 브루트포스 알고리즘
* https://www.acmicpc.net/problem/3040
*/
public class BOJ_B2_3040_백설_공주와_일곱_난쟁이 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
// 9명의 난쟁이
int[] arr = new int[9];
int sum = 0;
// 9명의 난쟁이 키를 받아옴
for (int i = 0; i < 9; i++) {
arr[i] = Integer.parseInt(br.readLine());
sum += arr[i];
}
// 정렬
Arrays.sort(arr);
// 스파이 2명
int spy1 = -1, spy2 = -1;
// 9명 키 - 스파이 2명 키 = 100
for (int i = 0; i < 9-1; i++) {
for (int j = i+1; j < 9; j++) {
// 스파이 2명 index값 저장
if((sum - arr[i] - arr[j]) == 100) {
spy1 = i;
spy2 = j;
break;
}
}
}
// 스파이 2명 제외 하고 출력
for (int n = 0; n < 9; n++) {
if(n==spy1 || n==spy2)
continue;
System.out.println(arr[n]);
}
}
}
BaekJoon List
BaekJoon List
BOJ Start!! ● [BOJ] 백준 회원가입, 시작하는 법 ● [BOJ] 등급(티어) 및 Solved.AC 적용 ● [BOJ/JAVA] 백준 소스코드 제출 시 유의사항(자바) Bronze ● Bronze V - ● Bronze IV - ● Bronze III -..
han-hoon.tistory.com
기회는 준비된 자에게 찾아온다.

반응형
LIST
'BaekJoon > Bronze' 카테고리의 다른 글
[BOJ/JAVA] 백준 3052 : 나머지 (자바) (0) | 2022.04.04 |
---|---|
[BOJ/JAVA] 백준 2804 : 크로스워드 만들기 (자바) (0) | 2022.04.04 |
[BOJ/JAVA] 백준 2798 : 블랙잭 (자바) (0) | 2022.04.04 |
[BOJ/JAVA] 백준 2605 : 줄 세우기 (자바) (0) | 2022.03.27 |
[BOJ/JAVA] 백준 2309 : 일곱 난쟁이 (자바) (0) | 2022.03.26 |
댓글