백준 2309번
https://www.acmicpc.net/problem/2309
문제설명
9개의 값들 중 7개의 값이 합하여 100이 되는 경우의 수를 출력 하면 되는문제
> 브루트포스 알고리즘
접근
1. 9개중 7개를 뽑아서 100이 되야함 -> 9개중 2개를 뽑는것 과 같음.
2. 9개의 합에서 100을 뺀 값이 선택한 두개의 값이랑 같다면 해당 값을 0 으로 변경후 정렬(오름차순을 위해)
3. 인덱스 2번부터 9번까지 반복문을 돌며 출력.
코드
import java.io.*;
import java.util.*;
public class Main{
public static void main(String args[]) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
int []num = new int[9];
int sum = 0;
for(int i=0;i<9;i++){
num[i] = Integer.parseInt(bf.readLine());
sum += num[i];
}
for(int i=0;i<8;i++){
for(int j=i+1;j<9;j++){
if(sum - (num[i] + num[j]) == 100){
num[i] = 0;
num[j] = 0;
Arrays.sort(num);
for(int k=2;k<9;k++){
System.out.println(num[k]);
}
return;
}
}
}
}
}
풀이
> 위 접근과 동일
'알고리즘 > 백준 Baekjoon' 카테고리의 다른 글
백준 4963번 섬의 개수(JAVA) - DFS (0) | 2023.02.19 |
---|---|
백준 1541번 잃어버린 괄호(JAVA) - 그리디 (0) | 2023.02.15 |
백준 9093번 단어 뒤집기(JAVA) (0) | 2022.12.27 |
백준 9095번 1,2,3 더하기 (C++) (0) | 2021.06.02 |
백준 20365번 블로그2 (C++) (0) | 2021.04.23 |