[λ°±μ€ BOJ / C++] 2217λ²: λ‘ν
λ¬Έμ
<λ¬Έμ >
N(1 ≤ N ≤ 100,000)κ°μ λ‘νκ° μλ€. μ΄ λ‘νλ₯Ό μ΄μ©νμ¬ μ΄λ°μ λ° λ¬Όμ²΄λ₯Ό λ€μ΄ μ¬λ¦΄ μ μλ€. κ°κ°μ λ‘νλ κ·Έ κ΅΅κΈ°λ κΈΈμ΄κ° λ€λ₯΄κΈ° λλ¬Έμ λ€ μ μλ 물체μ μ€λμ΄ μλ‘ λ€λ₯Ό μλ μλ€.
νμ§λ§ μ¬λ¬ κ°μ λ‘νλ₯Ό λ³λ ¬λ‘ μ°κ²°νλ©΄ κ°κ°μ λ‘νμ 걸리λ μ€λμ λλ μ μλ€. kκ°μ λ‘νλ₯Ό μ¬μ©νμ¬ μ€λμ΄ wμΈ λ¬Όμ²΄λ₯Ό λ€μ΄ μ¬λ¦΄ λ, κ°κ°μ λ‘νμλ λͺ¨λ κ³ λ₯΄κ² w/k λ§νΌμ μ€λμ΄ κ±Έλ¦¬κ² λλ€.
κ° λ‘νλ€μ λν μ λ³΄κ° μ£Όμ΄μ‘μ λ, μ΄ λ‘νλ€μ μ΄μ©νμ¬ λ€μ΄μ¬λ¦΄ μ μλ 물체μ μ΅λ μ€λμ ꡬν΄λ΄λ νλ‘κ·Έλ¨μ μμ±νμμ€. λͺ¨λ λ‘νλ₯Ό μ¬μ©ν΄μΌ ν νμλ μμΌλ©°, μμλ‘ λͺ κ°μ λ‘νλ₯Ό 골λΌμ μ¬μ©ν΄λ λλ€.
<μ λ ₯>
첫째 μ€μ μ μ Nμ΄ μ£Όμ΄μ§λ€. λ€μ Nκ°μ μ€μλ κ° λ‘νκ° λ²νΈ μ μλ μ΅λ μ€λμ΄ μ£Όμ΄μ§λ€. μ΄ κ°μ 10,000μ λμ§ μλ μμ°μμ΄λ€.
<μΆλ ₯>
첫째 μ€μ λ΅μ μΆλ ₯νλ€.
2217λ²: λ‘ν
N(1 ≤ N ≤ 100,000)κ°μ λ‘νκ° μλ€. μ΄ λ‘νλ₯Ό μ΄μ©νμ¬ μ΄λ° μ λ° λ¬Όμ²΄λ₯Ό λ€μ΄μ¬λ¦΄ μ μλ€. κ°κ°μ λ‘νλ κ·Έ κ΅΅κΈ°λ κΈΈμ΄κ° λ€λ₯΄κΈ° λλ¬Έμ λ€ μ μλ 물체μ μ€λμ΄ μλ‘ λ€λ₯Ό μλ μλ€. ν
www.acmicpc.net
λ¬Έμ νμ΄
κ° λ‘νκ° λ²νΈ μ μλ μ΅λ μ€λμ λ΄λ¦Όμ°¨μμΌλ‘ μ λ ¬ν λ€ λ‘νλ₯Ό 1κ°λ§ μ΄μ©νμ κ²½μ°, 2κ°λ§ μ΄μ©νμ κ²½μ°, ..., Nκ° μ΄μ©νμ κ²½μ°μ μ΅λ μ€λμ ꡬν©λλ€. μ΄λ κ°μ₯ ν° μ΅λ μ€λμ΄ answerκ° λ©λλ€.
μλ₯Ό λ€μ΄ μ λ ¬ν ropeμ μ΅λ μ€λμ΄ [15, 10, 7, 5, 5]μΌ κ²½μ°
- λ‘ν 1κ° μ΄μ©
weight = 15 * 1 = 15 - λ‘ν 2κ° μ΄μ©
weight = 10 * 2 = 20 - λ‘ν 3κ° μ΄μ©
weight = 7 * 3 = 21 - λ‘ν 4κ° μ΄μ©
weight = 5 * 4 = 20 - λ‘ν 5κ° μ΄μ©
weight = 5 * 5 = 25
λ°λΌμ max_weightμ 25κ° λ©λλ€.
λ΄λ¦Όμ°¨μ μ λ ¬μλ functional ν€λμ μ μλμ΄ μλ greater<>()λ₯Ό μ΄μ©νμ΅λλ€.
μμ€μ½λ
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
//2217λ²: λ‘ν
#include <iostream>
#include <vector>
#include <algorithm>
#include <functional>
using namespace std;
int main() {
ios::sync_with_stdio(false);
cin.tie(NULL);
int N, answer = 0;
int max_weight = 0;
cin >> N;
vector<int> rope(N);
for(int i = 0; i < N; i++)
cin >> rope[i];
sort(rope.begin(), rope.end(), greater<>()); //λ΄λ¦Όμ°¨μ μ λ ¬
for(int i = 0; i < N; i++) {
if(rope[i] * (i + 1) > max_weight)
max_weight = rope[i] * (i + 1);
}
answer = max_weight;
cout << answer;
return 0;
}
|
cs |
곡λΆν κ²μ μ 리ν λ΄μ©μ λλ€. μμ ν λΆλΆμ΄ μλ€λ©΄ μλ €μ£Όμλ©΄ κ°μ¬νκ² μ΅λλ€ :)