λ¬Έμ
N(1 ≤ N ≤ 100,000)κ°μ λ‘νκ° μλ€. μ΄ λ‘νλ₯Ό μ΄μ©νμ¬ μ΄λ° μ λ° λ¬Όμ²΄λ₯Ό λ€μ΄μ¬λ¦΄ μ μλ€. κ°κ°μ λ‘νλ κ·Έ κ΅΅κΈ°λ κΈΈμ΄κ° λ€λ₯΄κΈ° λλ¬Έμ λ€ μ μλ 물체μ μ€λμ΄ μλ‘ λ€λ₯Ό μλ μλ€.
νμ§λ§ μ¬λ¬ κ°μ λ‘νλ₯Ό λ³λ ¬λ‘ μ°κ²°νλ©΄ κ°κ°μ λ‘νμ 걸리λ μ€λμ λλ μ μλ€. kκ°μ λ‘νλ₯Ό μ¬μ©νμ¬ μ€λμ΄ wμΈ λ¬Όμ²΄λ₯Ό λ€μ΄μ¬λ¦΄ λ, κ°κ°μ λ‘νμλ λͺ¨λ κ³ λ₯΄κ² w/k λ§νΌμ μ€λμ΄ κ±Έλ¦¬κ² λλ€.
κ° λ‘νλ€μ λν μ λ³΄κ° μ£Όμ΄μ‘μ λ, μ΄ λ‘νλ€μ μ΄μ©νμ¬ λ€μ΄μ¬λ¦΄ μ μλ 물체μ μ΅λ μ€λμ ꡬν΄λ΄λ νλ‘κ·Έλ¨μ μμ±νμμ€. λͺ¨λ λ‘νλ₯Ό μ¬μ©ν΄μΌ ν νμλ μμΌλ©°, μμλ‘ λͺ κ°μ λ‘νλ₯Ό 골λΌμ μ¬μ©ν΄λ λλ€.
μ λ ₯
첫째 μ€μ μ μ Nμ΄ μ£Όμ΄μ§λ€. λ€μ Nκ°μ μ€μλ κ° λ‘νκ° λ²νΈ μ μλ μ΅λ μ€λμ΄ μ£Όμ΄μ§λ€. μ΄ κ°μ 10,000μ λμ§ μλ μμ°μμ΄λ€.
μΆλ ₯
첫째 μ€μ λ΅μ μΆλ ₯νλ€.
νμ΄
λ‘νλ₯Ό nκ° μ¬μ©νλ€κ³ κ°μ νλ©΄ κ°μ₯ νμ€μ΄ μ μ λ‘νμ νμ€ a*nμ 무κ²λ₯Ό λ²νΈ μ μλ€
μλ₯Ό λ€μ΄ 10, 20, 30, 40μ λ‘νλ₯Ό μ¬μ©νλ€λ©΄
1κ°λ§ μ¬μ© -> 40 νκ° -> 40 * 1 = 40
2κ°λ§ μ¬μ© -> 40κ³Ό 30 -> 30*2 = 60
3κ°λ§ μ¬μ© -> 40κ³Ό 30κ³Ό 20 -> 20*3 = 60
4κ° λ€ μ¬μ© -> 40κ³Ό 30κ³Ό 20κ³Ό 10 -> 10*4 = 40
μ΄λ―λ‘ 2κ°λ 3κ°λ§ μ¬μ©ν΄μΌνλ κ²μ΄λ€
λ°λΌμ μ£Όμ΄μ§ λ‘ν μ€ nκ° μ¬μ©, n-1κ° μ¬μ©, n-2κ° μ¬μ©νλ κ²½μ° λ²νΈ μ μλ 무κ²λ₯Ό ꡬν΄μ μ΅λκ°μ ꡬνλ©΄ λλ€
λ‘νλ₯Ό νμ€ μμλλ‘ μ λ ¬ν λ€ λ°λ³΅λ¬Έμ μ΄μ©ν΄μ κ°λ¨νκ² νμ΄λ΄μ
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main() {
int n;
cin >> n;
vector<int> v(n);
for(int i=0; i<n; i++) {
cin >> v[i];
}
int ans = 0;
sort(v.begin(), v.end());
for(int i=0; i<n; i++) {
ans = max(ans, v[i]*(n-i));
}
cout << ans;
}
2025.03.10
// νμ΄ : https://whkakrkr.tistory.com
#include <bits/stdc++.h>
using namespace std;
int solution(int &n, vector<int> &ropes) {
int ans = 0;
sort(ropes.begin(), ropes.end(), greater<>());
for(int i=0; i<n; i++) {
int cur = ropes[i];
int cnt = i+1;
ans = max(ans, cur*cnt);
}
return ans;
}
int main() {
ios_base::sync_with_stdio(false);
cout.tie(NULL);
cin.tie(NULL);
int n;
cin >> n;
vector<int>ropes(n);
for(int i=0; i<n; i++) {
cin >> ropes[i];
}
cout << solution(n, ropes);
return 0;
}
'ποΈ ICPC Sinchon > Greedy' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[BOJ][C++] λ°±μ€ 14908λ²: ꡬλ μμ 곡 (Gold I) (0) | 2025.02.10 |
---|---|
[BOJ][Python / C++] λ°±μ€ 16953λ²: A β B (Silver II) (0) | 2024.11.01 |
[BOJ][C++] λ°±μ€ 16206λ²: λ‘€μΌμ΄ν¬ (0) | 2023.04.12 |
[BOJ][C++] λ°±μ€ 27112λ²: μκ° μΈ κ·Όλ¬΄ λ©μΆ°! (0) | 2023.02.01 |
[BOJ][C++] λ°±μ€ 11501λ²: μ£Όμ (0) | 2023.01.31 |