으하하 공부일기
[SWEA] - 5948. 새샘이의 7-3-5 게임 (D3) 본문
[문제]
숫자게임을 좋아하는 새샘이는 서로 다른 7개의 정수 중에서 3개의 정수를 골라 합을 구해서 수를 만들려고 한다.
이렇게 만들 수 있는 수 중에서 5번째로 큰 수를 출력하는 프로그램을 작성하라.
[입력]
첫 번째 줄에 테스트 케이스의 수 T가 주어진다.
각 테스트 케이스의 첫 번째 줄에는 7개의 서로 다른 정수가 공백으로 구분되어 주어진다. 각 정수는 1이상 100이하이다.
[출력]
각 테스트 케이스마다 첫 번째 줄에는 ‘#x’(x는 테스트케이스 번호를 의미하며 1부터 시작한다)를 출력하고, 답을 출력한다.
문제 풀기
5948. 새샘이의 7-3-5 게임
[풀이]
import java.util.Collections;
import java.util.HashSet;
import java.util.LinkedList;
import java.util.Scanner;
class Solution {
public static void main(String[] args) throws Exception {
Scanner sc = new Scanner(System.in);
int t = sc.nextInt();
for(int tc=1; tc<=t; tc++) {
int[] arr = new int[7];
// 3개의 정수 합을 저장할 set
HashSet<Integer> set = new HashSet<>();
for(int i=0; i<7; i++) arr[i] = sc.nextInt();
for(int i=0; i<7; i++) {
for(int j=i+1; j<7; j++) {
for(int k=j+1; k<7; k++) {
set.add(arr[i] + arr[j] + arr[k]);
}
}
}
// set을 정렬하기 위한 List
LinkedList<Integer> list = new LinkedList<>(set);
Collections.sort(list);
System.out.format("#%d %d\n", tc, list.get(list.size()-5));
}
}
}
'SWEA > D3' 카테고리의 다른 글
[SWEA] - 6019. 기차 사이의 파리 (D3) (0) | 2022.05.12 |
---|---|
[SWEA] - 5986. 새샘이와 세 소수 (D3) (0) | 2022.05.12 |
[SWEA] - 5789. 현주의 상자 바꾸기 (D3) (0) | 2022.05.12 |
[SWEA] - 5688. 세제곱근을 찾아라 (D3) (0) | 2022.05.12 |
[SWEA] - 5549. 홀수일까 짝수일까 (D3) (0) | 2022.05.12 |