backend_fighting 2023. 1. 14. 09:53
728x90

import java.util.*;

class Solution 
{
    public int solution(int[] d, int budget) 
    {
        int answer = 0;
        int sum =0;
        Arrays.sort(d);
        for(int i=0;i<d.length;i++)
        {
            
            if(sum+d[i]<=budget)
            {
                sum+=d[i];
                answer++;
            }
        }
        
        return answer;
    }
}

 

그리디 문제라서 생각보단 어렵지 않게 풀린다.

 

프로그래머스 베스트코드

 

import java.util.*;

class Solution {
  public int solution(int[] d, int budget) {
      int answer = 0;

        Arrays.sort(d);

        for (int i = 0; i < d.length; i++) {
            budget -= d[i];

            if (budget < 0) break;

            answer++;
        }

        return answer;
  }
}

 

budget에서 빼는형식으로 설계를 하셨다.

728x90