문제링크 : https://www.acmicpc.net/problem/16112
#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define pil pair <int, int>
ll arr[300000];
int main(void) {
ios_base::sync_with_stdio(false);
cin.tie(0);
int N, K;
cin >> N >> K;
for(int i=0; i<N; i++)
{
cin >> arr[i];
}
sort(arr, arr+N);
ll sum = 0;
for(ll i=1; i<=K; i++) //arr1 ~ arrK
{
ll result = arr[i] * i;
sum += result;
}
for(ll i= K+1; i<N; i++) //arrK+1 ~ arrN
{
ll result = arr[i] * K;
sum +=result;
}
cout << sum;
}
1번 아케인스톤이 활성화 됐을 때, 쌓이는 경험치는 arr[1] ~ arr[N] (배열이 0부터 시작하기에 0 + 1 = 1)
K번 아케인스톤이 활성화 됐을 때, 쌓이는 경험치는 arr[K+1] ~ arr[N] 이다.
'백준 > 실버' 카테고리의 다른 글
[백준 5637번] 가장 긴 단어 (C++) (0) | 2023.03.10 |
---|---|
[백준 15973번] 두 박스 (C++) (0) | 2023.03.09 |
[백준 5212번] 지구 온난화 (C++) (0) | 2023.03.05 |
[백준 2670번] 연속부분 최대곱 (C++) (0) | 2023.03.04 |
[백준 19583번] 싸이버개강총회 (C++) (0) | 2023.03.02 |