Skip to content

Commit 908bd4a

Browse files
committed
[Gold II] Title: 저울, Time: 8 ms, Memory: 69108 KB -BaekjoonHub
1 parent e353376 commit 908bd4a

2 files changed

Lines changed: 46 additions & 0 deletions

File tree

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
# [Gold II] 저울 - 2437
2+
3+
[문제 링크](https://www.acmicpc.net/problem/2437)
4+
5+
### 성능 요약
6+
7+
메모리: 69108 KB, 시간: 8 ms
8+
9+
### 분류
10+
11+
그리디 알고리즘, 정렬
12+
13+
### 제출 일자
14+
15+
2025년 8월 15일 16:52:46
16+
17+
### 문제 설명
18+
19+
<p>하나의 양팔 저울을 이용하여 물건의 무게를 측정하려고 한다. 이 저울의 양 팔의 끝에는 물건이나 추를 올려놓는 접시가 달려 있고, 양팔의 길이는 같다. 또한, 저울의 한쪽에는 저울추들만 놓을 수 있고, 다른 쪽에는 무게를 측정하려는 물건만 올려놓을 수 있다.</p>
20+
21+
<p style="text-align: center;"><img alt="" src="https://upload.acmicpc.net/7d2a2428-a1b0-47f5-9f53-fecd714d1b1b/-/preview/" style="width: 221px; height: 141px;"></p>
22+
23+
<p>무게가 양의 정수인 N개의 저울추가 주어질 때, 이 추들을 사용하여 측정할 수 없는 양의 정수 무게 중 최솟값을 구하는 프로그램을 작성하시오.</p>
24+
25+
<p>예를 들어, 무게가 각각 3, 1, 6, 2, 7, 30, 1인 7개의 저울추가 주어졌을 때, 이 추들로 측정할 수 없는 양의 정수 무게 중 최솟값은 21이다. </p>
26+
27+
### 입력
28+
29+
<p>첫 째 줄에는 저울추의 개수를 나타내는 양의 정수 N이 주어진다. N은 1 이상 1,000 이하이다. 둘째 줄에는 저울추의 무게를 나타내는 N개의 양의 정수가 빈칸을 사이에 두고 주어진다. 각 추의 무게는 1이상 1,000,000 이하이다.</p>
30+
31+
### 출력
32+
33+
<p>첫째 줄에 주어진 추들로 측정할 수 없는 양의 정수 무게 중 최솟값을 출력한다.</p>
34+
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
let n = Int(readLine()!)!
2+
var numbers = readLine()!.split { $0 == " " }.map { Int($0)! }.sorted { $0 > $1 }
3+
var expectNumber = 1
4+
5+
while !numbers.isEmpty {
6+
guard let last = numbers.last else { break }
7+
guard last <= expectNumber else { break }
8+
numbers.popLast()
9+
expectNumber += last
10+
}
11+
12+
print(expectNumber)

0 commit comments

Comments
 (0)