글
프로그래머스 C# 예산(int[]의 Sort)
프로그래밍
2023. 1. 25. 16:09
728x90
SMALL
using System;
public class Solution {
public int solution(int[] d, int budget) {
int answer = 0;
Array.Sort(d);
/// 소팅하고 마이너스
for(int i = 0;i<d.Length;i++)
{
if(budget >= d[i])
{
budget = budget - d[i];
answer++;
}
}
return answer;
}
}
// 다른 사람의 풀이를 보고 한 건데 약간 함정이 있는 게
// 이건 모든 경우에서 예산 배분이 안되는 경우가 없게 설정되어 있는 듯하다.
// 그래서 알고리즘 상으로는 budget을 계속 마이너스 시켜서 0보다 작아지면 그 때 까지 축적된 answer 값을 출력시키는 건데 만약에 예산 배분이 안되면 리턴 값이 0이 나오거나 -1이 나오거나 이런 식으로 처리해야 되는데 그런 케이스는 없는 경우인 거 같다.
728x90
'프로그래밍' 카테고리의 다른 글
C# 기사단원의 무기(약수) (0) | 2023.01.26 |
---|---|
프로그래머스 C# 스킬트리(IndexOf) (0) | 2023.01.25 |
프로그래머스 C# 최소직사각형(한 쪽으로 배열을 몰아서 비교하고 곱하기) - 완전탐색 (0) | 2023.01.25 |
프로그래머스 C# 모의고사(비교대상 배열을 정의) - 완전탐색 (0) | 2023.01.25 |
프로그래머스 C# 두 개 뽑아서 더하기(OrderBy, Distinct()) (0) | 2023.01.24 |