-
Educational Codeforces Round 30 - A. Chores코드포스(CodeForce) 2018. 8. 17. 18:14반응형
1. 문제
2. 알고리즘
키워드 - 구현
* 문제 접근
루바는 잡일을 하는데 효율적으로 일을 하고 싶어 한다.
첫 라인에서 입력 받는 n, k, x 는
n 은 총 잡일의 수, k 는 x 시간 동안 할 수 있는 일.. 해석 능력이 영 그지 같앗.
두 번째 라인은 n 개의 잡일이 소요되는 각각의 시간이다.
내림 차순으로 정렬을 하고 가장 소요시간이 큰 잡일을 k 개수 만큼 추려 낸다.
정렬 된 잡일의 소요 시간을 0 부터 k 인덱스 까지 x 시간으로 치환 한다.
치환 된 잡일배열에 모든 합계를 출력한다.
이거 뭐 풀긴 풀었는대 설명도 이상하고, 해석을 잘못해서 그런가 아무튼 답은 맞는데 찝찝하다.
3. 코드
123456789101112131415161718192021222324252627282930313233343536373839404142#include<stdio.h>#include<string.h>#include<stdlib.h>#include<queue>#include<stack>#include<math.h>#include<vector>#include<map>#include<set>#include<stdlib.h>#include<cmath>#include<string>#include<algorithm>#include<iostream>#include <functional> // greater 사용 위해 필요using namespace std;int main(){long long n, k, x;cin >> n >> k >> x;vector<int> arr(n);for (int i = 0; i < n; i++)cin >> arr[i];// [내림차순 정렬]sort(arr.begin(), arr.end(), greater<int>());// [정렬된 배열에서 0 부터 k 까지 x 시간으로 치환]for (int i = 0; i < k; i++) {arr[i] = x;}int sol = 0;// [모든 소요시간을 합산하여 출력]for (int i = 0; i < n; i++)sol += arr[i];cout << sol<< endl;return 0;}cs 반응형'코드포스(CodeForce)' 카테고리의 다른 글
Educational Codeforces Round 32 - B. Buggy Robot (0) 2018.08.17 Educational Codeforces Round 31 - A. Book Reading (0) 2018.08.17 Codeforces Round #467 (Div. 2) - A. Olympiad (0) 2018.08.17 Educational Codeforces Round 29 - A. Quasi-palindrome (0) 2018.08.17 Codeforces Round #466 (Div. 2) - A. Points on the line (0) 2018.08.17