Search

๊น€๋„ํ˜„

2.๋ฌธ์ œ์ด๋ฆ„
3. ์ˆ˜ํ–‰์‹œ๊ฐ„[์ดˆ(s)]
600
์ข‹์•„์š” ๋ˆ„๋ฅด๊ธฐ
์ข‹์•„์š” ์ˆ˜
: 0
5 more properties
| ์ฝ”๋“œ ์ž‘์„ฑํ•˜๊ธฐ
import java.util.Arrays; public class Programmers_binarySearch { public static int solution(int[] d, int budget) { int answer = 0; int sum = 0; // 1. Arrays.sort(d); // 2. for (int i = 0; i < d.length; i++) { if(sum<=budget){ sum += d[i]; answer++; } } // 3. if (sum <= budget) return answer; else { return answer - 1; } } public static void main(String[] args) { System.out.println(solution(new int[]{1, 3, 2, 5, 4}, 9)); // 3 System.out.println(solution(new int[]{2, 2, 3, 3}, 10)); // 4 System.out.println(solution(new int[]{1}, 10)); // 1 } }
Java
๋ณต์‚ฌ
| ์ฝ”๋“œ ์„ค๋ช…ํ•˜๊ธฐ
์ด๋ถ„ ํƒ์ƒ‰์œผ๋กœ ํ’€๊ธฐ ๋ณด๋‹ค๋Š” ์™„ํƒ์œผ๋กœ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜์˜€๋‹ค.
1.
๋ฐฐ์—ด d ๋ฅผ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌ
2.
๋ฐ˜๋ณต๋ฌธ์œผ๋กœ ์ •๋ ฌ๋œ ๋ฐฐ์—ด ๊ธธ์ด๋งŒํผ ์•ž์—์„œ๋ถ€ํ„ฐ ์ฃผ์–ด์ง„ ์˜ˆ์‚ฐ์ด ๋„˜์น  ๋•Œ๊นŒ์ง€ ๋ฐ์ดํ„ฐ๋ฅผ ๋”ํ•œ๋‹ค.
3.
๋”ํ•œ ๊ฐ’์ด ์ฃผ์–ด์ง„ ์˜ˆ์‚ฐ๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์œผ๋ฉด ๊ทธ๋Œ€๋กœ answer ๋ฐ˜ํ™˜ ๋” ํฌ๋‹ค๋ฉด ํ•œ๋ฒˆ ๋” ๊ณ„์‚ฐ์„ ํ–ˆ์œผ๋ฏ€๋กœ answer-1 ํ•˜์—ฌ ๋ฐ˜ํ™˜
< ๋ง‰ํ˜”๋˜ ๋ถ€๋ถ„ >
d
budget
result
[1]
10
1
// 3. if (sum == budget) return answer; else { return answer - 1; }
Java
๋ณต์‚ฌ
์ œ์ถœํ•œ ์ฝ”๋“œ๊ฐ€ ํ‹€๋ ค ๋ฐ˜๋ก€๋ฅผ ์ฐพ๋Š”๋ฐ ์‹œ๊ฐ„์ด ์ข€ ๊ฑธ๋ ธ๋‹ค.
์šฐ์„  ์ฒ˜์Œ์—๋Š” ๋‹จ์ˆœํ•˜๊ฒŒ MIN, MAX ๊ฐ’์„ ๋„ฃ์–ด ํ™•์ธํ•˜์˜€๋Š”๋ฐ ๋ฐ”๋กœ ๋ฐ˜๋ก€๋ฅผ ์ฐพ์•˜๋‹ค!
๊ทธ ๋ฐ˜๋ก€๋Š” ์œ„์˜ ์˜ˆ์‹œ๋ฅผ ๋„ฃ์—ˆ์„ ๋•Œ ๊ฒฐ๊ณผ๊ฐ’์ด 0 ์ด ๋‚˜์™”๋‹ค.
์กฐ๊ฑด๋ฌธ์—์„œ if (sum == budget) ์„ if (sum <= budget) ๋กœ ๋ฐ”๊พธ์–ด ํ•ด๊ฒฐํ•˜์˜€๋‹ค.