곽로그

[백준 2789 자바] 블랙잭 본문

알고리즘/백준

[백준 2789 자바] 블랙잭

일도이동 2020. 3. 8. 13:59
반응형

문제

 

접근

 

코드

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.ArrayList;
import java.util.StringTokenizer;

public class Main {
	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
		
		int[] cards;
		ArrayList<Integer> sums = new ArrayList<Integer>();
		
		
		String[] line = br.readLine().split(" ");
		int N = Integer.parseInt(line[0]);
		int M = Integer.parseInt(line[1]);
		
		String[] nums = br.readLine().split(" ");
		
		cards= new int[N];
		for(int i=0;i<cards.length;i++) {
			cards[i]= Integer.parseInt(nums[i]);
		}
		
		
		
		for(int i = 0; i<=N-3 ; i++) {
			for(int j=i+1; j<=N-2; j++) {
				for(int k=j+1; k<=N-1 ; k++) {
					int cardOne = cards[i];
					int cardTwo = cards[j];
					int cardThree = cards[k];
					int sum =cardOne+cardTwo+cardThree;
					if(sum <=M) {
						sums.add(cardOne+cardTwo+cardThree);
					}
					else {
						continue;
					}
				}
			}
		}
		
		bw.write(Integer.toString(getMax(sums)));
		bw.close();
	}
	public static int getMax(ArrayList<Integer> list) {
		int max = 0;
		for(int i = 0; i<list.size();i++) {
			if(list.get(i)>max) {
				max = list.get(i);
			}
		}
		return max;
	}

}
반응형
Comments