μ€νλ°μ€λ μλμ μ μ₯μν¬ λ λ νΉν λ°©λ²μΌλ‘ μ μ₯μν¨λ€.
μ€νλ°μ€μμλ μλμ 8μκ° λ λ κΉμ§, λ¬Έμμ μ€ μΈμ λλλ€. κ·Έλ¦¬κ³ 8μκ° λλ μκ° μλλ€μ λͺ¨λ μ ꡬμμ 컀νΌλ₯Ό νλμ© λ°κ³ , μλ¦¬λ‘ κ°λ€. κ°νΈλ μ ꡬμμ 컀νΌλ₯Ό νλμ© μ£Όλ μν μ νλ€.
μλλ€μ μ ꡬμ λ€μ΄κ° λ, κ°νΈμκ² νμ μ€λ€. μλλ€μ μκΈ°κ° μ»€νΌλ₯Ό λͺ λ²μ§Έ λ°λμ§μ λ°λΌ νμ λ€λ₯Έ μ‘μλ‘ κ°νΈμκ² μ€λ€. κ° μλμ κ°νΈμκ² μλ μ£Όλ €κ³ μκ°νλ λ - (λ°μ λ±μ - 1) λ§νΌμ νμ κ°νΈμκ² μ€λ€. λ§μ½, μμ μμΌλ‘ λμ¨ κ°μ΄ μμλΌλ©΄, κ°νΈλ νμ λ°μ μ μλ€.
μλ₯Ό λ€μ΄, λ―ΌνΈλ νμ 3μ μ£Όλ €κ³ νκ³ , μ¬νμ΄λ νμ 2μ, μ£Όνμ΄κ° νμ 1μ μ£Όλ €κ³ ν κ²½μ°λ₯Ό μκ°ν΄λ³΄μ.
λ―ΌνΈ, μ¬ν, μ£Όνμ΄ μμλλ‘ μ€μ μμλ€λ©΄, λ―ΌνΈλ κ°νΈμκ² 3-(1-1) = 3μ, μ¬νμ΄λ 2-(2-1) = 1μ, μ£Όνμ΄λ 1-(3-1) = -1μμ νμΌλ‘ μ£Όκ² λλ€. μ£Όνμ΄λ μμμ΄κΈ° λλ¬Έμ, κ°νΈμκ² νμ μ£Όμ§ μλλ€. λ°λΌμ, κ°νΈλ νμ 3+1+0=4μμ λ°κ² λλ€.
μ€νλ°μ€ μμ μλ μ¬λμ μ Nκ³Ό, κ° μ¬λμ΄ μ£Όλ €κ³ μκ°νλ νμ΄ μ£Όμ΄μ§ λ, μλμ μμλ₯Ό μ μ ν λ°κΏ¨μ λ, κ°νΈκ° λ°μ μ μλ νμ μ΅λκ°μ ꡬνλ νλ‘κ·Έλ¨μ μμ±νμμ€.
μ λ ₯
첫째 μ€μ μ€νλ°μ€ μμ μ μλ μ¬λμ μ Nμ΄ μ£Όμ΄μ§λ€. Nμ 100,000λ³΄λ€ μκ±°λ κ°μ μμ°μμ΄λ€. λμ§Έ μ€λΆν° μ΄ Nκ°μ μ€μ κ° μ¬λμ΄ μ£Όλ €κ³ νλ νμ΄ μ£Όμ΄μ§λ€. νμ 100,000λ³΄λ€ μκ±°λ κ°μ μμ°μμ΄λ€.
μΆλ ₯
κ°νΈκ° λ°μ μ μλ νμ μ΅λκ°μ μΆλ ₯νλ€.
νμ΄
6% μμ νλ Έμ΅λλ€κ° λ¬λ€λ©΄..?
μ μνμ int λ§κ³ long long int λ‘ ν΄λ³΄μ
// Authored by : seondal
// Co-authored by : -
// #include <bits/stdc++.h>
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
long long int cal_tip(int n, vector<long long int> v) {
long long int tip = 0;
for(int i=0; i<n; i++) {
long long int tmp = v[i] - i;
if(tmp>=0) tip += tmp;
}
return tip;
}
int main() {
int n;
cin >> n;
vector<long long int> v(n);
for(int i=0; i<n; i++) cin >> v[i];
sort(v.begin(), v.end(), greater<>());
cout << cal_tip(n, v);
return 0;
}
/*
*/
'ποΈ ICPC Sinchon > Sorting' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[BOJ S1][C++] λ°±μ€ 1946λ² : μ μ μ¬μ (0) | 2022.09.06 |
---|---|
[BOJ S4][C++] λ°±μ€ 1026λ² : 보물 (0) | 2022.09.06 |
[BOJ S3][C++] λ°±μ€ 1431λ² : μλ¦¬μΌ λ²νΈ (0) | 2022.09.06 |
[BOJ S5][C++] 11651λ²: μ’ν μ λ ¬νκΈ° 2 (0) | 2022.09.06 |
[BOJ S4][C++] λ°±μ€ 10825λ² : κ΅μμ (0) | 2022.09.04 |