본문 바로가기
Preparing Coding Test/Baekjoon

[Java/백준/브루트 포스] 2798 - 블랙잭

by weero 2020. 8. 26.

문제

https://www.acmicpc.net/problem/2798

 

2798번: 블랙잭

문제 카지노에서 제일 인기 있는 게임 블랙잭의 규칙은 상당히 쉽다. 카드의 합이 21을 넘지 않는 한도 내에서, 카드의 합을 최대한 크게 만드는 게임이다. 블랙잭은 카지노마다 다양한 규정이 ��

www.acmicpc.net

 

코드

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Collections;

public class Main{
	public static void main(String[] args) throws IOException{
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		
		String[] NM = br.readLine().split("\\s");
		int N = Integer.parseInt(NM[0]);
		int M = Integer.parseInt(NM[1]);
		
		String[] strArr = br.readLine().split("\\s");
		int[] arr = new int[N];
		for(int i=0; i<N; i++) {
			arr[i] = Integer.parseInt(strArr[i]);
		}
		
		int max=0;
		for(int i=0; i<N; i++) {
			for(int j=0; j<N; j++) {
				for(int k=0; k<N; k++) {
					if(i!=j && i!=k && j!=k && arr[i]+arr[j]+arr[k]>max && arr[i]+arr[j]+arr[k]<=M){
						max = arr[i]+arr[j]+arr[k];
					}
				}
			}
		}
		System.out.println(max);
	}
}