Skip to content

Commit a2644bc

Browse files
committed
[Silver V] Title: 장신구 명장 임스, Time: 96 ms, Memory: 14360 KB -BaekjoonHub
1 parent 5802c66 commit a2644bc

2 files changed

Lines changed: 67 additions & 0 deletions

File tree

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
# [Silver V] 장신구 명장 임스 - 25496
2+
3+
[문제 링크](https://www.acmicpc.net/problem/25496)
4+
5+
### 성능 요약
6+
7+
메모리: 14360 KB, 시간: 96 ms
8+
9+
### 분류
10+
11+
그리디 알고리즘, 정렬
12+
13+
### 제출 일자
14+
15+
2026년 2월 17일 13:57:52
16+
17+
### 문제 설명
18+
19+
<p>메이플스토리에는 전문 기술이라는 제작 시스템이 있다. 전문 기술은 특정량의 피로도가 쌓이는 대신 다양한 장비 및 비약을 제작할 수 있는 시스템이다. 장신구 명장인 임스는 어떻게 하면 더 효율적으로 많은 장신구를 제작할 수 있을지 고민에 빠졌다.</p>
20+
21+
<p>임스가 만들 수 있는 장신구는 $N$개가 있고, 각각의 장신구를 만들면 $A_i$만큼의 피로도가 누적된다.</p>
22+
23+
<p>피로도가 $200$ 미만인 경우, 장신구를 제작할 수 있다. 현재 쌓인 피로도가 $P$일 때, 임스가 제작할 수 있는 장신구의 최대 개수를 구해보자!</p>
24+
25+
### 입력
26+
27+
<p>첫 번째 줄에 정수 $P$와 정수 $N$이 공백으로 구분되어 주어진다. ($1 \le P \le 200$, $1 \le N \le 1\,000$)</p>
28+
29+
<p>두 번째 줄에는 정수 $A_1, A_2, \dots, A_N$이 공백으로 구분되어 주어진다. ($1 \le A_i \le 200$)</p>
30+
31+
### 출력
32+
33+
<p>제작할 수 있는 장신구의 최대 개수를 출력하시오.</p>
34+
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
import java.io.BufferedReader;
2+
import java.io.IOException;
3+
import java.io.InputStreamReader;
4+
import java.util.Arrays;
5+
import java.util.StringTokenizer;
6+
7+
public class Main {
8+
public static void main(String[] args) throws IOException {
9+
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
10+
StringTokenizer st = new StringTokenizer(br.readLine());
11+
12+
int P = Integer.parseInt(st.nextToken());
13+
int N = Integer.parseInt(st.nextToken());
14+
15+
st = new StringTokenizer(br.readLine());
16+
int[] A = new int[N];
17+
18+
for (int i = 0; i < N; i++) {
19+
A[i] = Integer.parseInt(st.nextToken());
20+
}
21+
22+
Arrays.sort(A);
23+
24+
int cnt = 0;
25+
for (int i = 0; i < N; i++) {
26+
if (P >= 200) break;
27+
P += A[i];
28+
cnt++;
29+
}
30+
31+
System.out.print(cnt);
32+
}
33+
}

0 commit comments

Comments
 (0)