카테고리 없음

[프로그래머스/Lv. 1] 예산

imname1am 2023. 3. 4. 18:13
반응형

🔺 문제

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

🔺 코드

import java.util.*;

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

① 일단 배열 d를 오름차순 정렬

② 예산에서 신청한 금액 중 작은 금액부터 빼게 했다.

③ 이러다가 예산이 0보다 작아지면 반복문을 탈출하게...

 

코드 순서에 따라 답이 갈리더라

 

 

🔺 다른 풀이들

import java.util.*;

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

if문 순서가 다르고, if문 안 조건이 신청 금액이 budget 보다 작은 경우에만 돌도록 함.


(참고)

 

[프로그래머스] - 예산 (Java) - Summer/Winter Coding(~2018)

프로그래머스 - 예산 [ Java 풀이 ] 프로그래머스의 예산 문제를 풀어보았습니다. ✔️ programmers.co.kr/learn/courses/30/lessons/12982 코딩테스트 연습 - 예산 S사에서는 각 부서에 필요한 물품을 지원해 주

devmoony.tistory.com

 

 

프로그래머스 level1 문제 : 예산(java)

문제 설명 : S사에서는 각 부서에 필요한 물품을 지원해 주기 위해 부서별로 물품을 구매하는데 필요한 금액을 조사했습니다. 그러나, 전체 예산이 정해져 있기 때문에 모든 부서의 물품을 구매

cnwlcjf.tistory.com

 

반응형