https://www.acmicpc.net/problem/1339
1339λ²: λ¨μ΄ μν
첫째 μ€μ λ¨μ΄μ κ°μ N(1 ≤ N ≤ 10)μ΄ μ£Όμ΄μ§λ€. λμ§Έ μ€λΆν° Nκ°μ μ€μ λ¨μ΄κ° ν μ€μ νλμ© μ£Όμ΄μ§λ€. λ¨μ΄λ μνλ²³ λλ¬Έμλ‘λ§ μ΄λ£¨μ΄μ Έμλ€. λͺ¨λ λ¨μ΄μ ν¬ν¨λμ΄ μλ μνλ²³μ μ΅λ
www.acmicpc.net
λ¬Έμ
λ―Όμμ΄λ μννμμμ λ¨μ΄ μν λ¬Έμ λ₯Ό νΈλ μμ λ₯Ό λ°μλ€.
λ¨μ΄ μν λ¬Έμ λ Nκ°μ λ¨μ΄λ‘ μ΄λ£¨μ΄μ Έ μμΌλ©°, κ° λ¨μ΄λ μνλ²³ λλ¬Έμλ‘λ§ μ΄λ£¨μ΄μ Έ μλ€. μ΄λ, κ° μνλ²³ λλ¬Έμλ₯Ό 0λΆν° 9κΉμ§μ μ«μ μ€ νλλ‘ λ°κΏμ Nκ°μ μλ₯Ό ν©νλ λ¬Έμ μ΄λ€. κ°μ μνλ²³μ κ°μ μ«μλ‘ λ°κΏμΌ νλ©°, λ κ° μ΄μμ μνλ²³μ΄ κ°μ μ«μλ‘ λ°λμ΄μ§λ©΄ μ λλ€.
μλ₯Ό λ€μ΄, GCF + ACDEBλ₯Ό κ³μ°νλ€κ³ ν λ, A = 9, B = 4, C = 8, D = 6, E = 5, F = 3, G = 7λ‘ κ²°μ νλ€λ©΄, λ μμ ν©μ 99437μ΄ λμ΄μ μ΅λκ° λ κ²μ΄λ€.
Nκ°μ λ¨μ΄κ° μ£Όμ΄μ‘μ λ, κ·Έ μμ ν©μ μ΅λλ‘ λ§λλ νλ‘κ·Έλ¨μ μμ±νμμ€.
μ λ ₯
첫째 μ€μ λ¨μ΄μ κ°μ N(1 ≤ N ≤ 10)μ΄ μ£Όμ΄μ§λ€. λμ§Έ μ€λΆν° Nκ°μ μ€μ λ¨μ΄κ° ν μ€μ νλμ© μ£Όμ΄μ§λ€. λ¨μ΄λ μνλ²³ λλ¬Έμλ‘λ§ μ΄λ£¨μ΄μ Έμλ€. λͺ¨λ λ¨μ΄μ ν¬ν¨λμ΄ μλ μνλ²³μ μ΅λ 10κ°μ΄κ³ , μμ μ΅λ κΈΈμ΄λ 8μ΄λ€. μλ‘ λ€λ₯Έ λ¬Έμλ μλ‘ λ€λ₯Έ μ«μλ₯Ό λνλΈλ€.
μΆλ ₯
첫째 μ€μ μ£Όμ΄μ§ λ¨μ΄μ ν©μ μ΅λκ°μ μΆλ ₯νλ€.
νμ΄
// Authored by : seondal
// Co-authored by : -
// #include <bits/stdc++.h>
#include <iostream>
#include <vector>
#include <algorithm>
#include <cmath>
using namespace std;
int solution(int n, vector<string>&word) {
vector<int> weight(26, 0); // μνλ²³λ€μ κ°μ€μΉλ₯Ό λ΄λ 벑ν°
for(int i=0; i<n; i++) {
int length = word[i].size();
for(int j=0; j<length; j++)
weight[word[i][j]-'A'] += pow(10, length-1-j); // ν΄λΉ μνλ²³μ΄ κ°μ§λ κ°μ€μΉλ₯Ό 벑ν°μ λ£μ΄μ€λ€
}
sort(weight.begin(), weight.end(), greater<>()); // κ°μ€μΉ λ΄λ¦Όμ°¨μ μ λ ¬
int sum = 0;
int tmp = 9; // λ°°μ ν κ° -> κ°μ€μΉκ° ν° μμλλ‘ λ°λ‘ κ³±ν΄μ λν΄μ€
for(int i=0; i<10; i++) { // μνλ²³ μ’
λ₯λ 10κ°λ₯Ό λμ§ μμ
sum += tmp * weight[i];
tmp--;
}
return sum;
}
int main() {
ios_base :: sync_with_stdio(false);
cin.tie(NULL); cout.tie(NULL);
int n;
cin >> n;
vector<string> word(n);
for(int i=0; i<n; i++)
cin >> word[i];
cout << solution(n, word);
return 0;
}
/*
*/

'ποΈ ICPC Sinchon > Greedy' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[BOJ][C++] 20921λ²: κ·Έλ κ³ κ·Έλ° μ¬μ΄ (0) | 2023.01.31 |
---|---|
[BOJ][C++] λ°±μ€ 14659λ²: νμ‘°μμ΄μ 리νκ³ μ΄γ γ (0) | 2023.01.31 |
[BOJ G5][C++] λ°±μ€ 11000λ²: κ°μμ€ λ°°μ (μκ°μ΄κ³Ό) (0) | 2022.10.11 |
[BOJ S4][C++] λ°±μ€ 11399λ²: ATM (0) | 2022.10.11 |
[νλ‘κ·Έλλ¨Έμ€] μ½λ©ν μ€νΈ μ°μ΅ νμλ²(Greedy): 체μ‘볡 (0) | 2022.10.11 |