Algorithm/JS

[알고리즘_Node.js_브루트 포스] 백준 2798번 블랙잭

Cune 2022. 8. 26. 09:33

 


 

 

<풀이 방법>

-오름차순으로 정렬한 후 제일 큰 숫자(배열 맨 끝)부터 조합해가며 m과 가까운 수가 나오는걸 찾기

const input = require("fs").readFileSync("/dev/stdin").toString().trim().split("\n");
const [n,m] = input[0].split(" ").map(Number);
const arr = input[1].split(" ").map(Number);
let result = 0;

arr.sort((a,b) =>  a-b);

for(let i=n-1; i>=2; i--){
  for(let j=i-1; j>=1; j--){
    for(let k=j-1; k>=0; k--){
      let sum = arr[i] + arr[j] + arr[k];
      if(m >= sum && sum > result){
          result = sum;
      }
    }
  }
}
console.log(result);