提出 #75278838


ソースコード 拡げる

#include <bits/stdc++.h>
#include <atcoder/all>
using namespace std;
using namespace atcoder;

/////////////////// メイン ///////////////////

int main () {
  
  //////////////////// 入力 ////////////////////

  int n, k;
  cin >> n >> k;

  vector<int> a(n);
  for (int i=0; i<n; i++) {
    cin >> a.at(i);
  }

  //////////////// 出力変数定義 ////////////////

  long long result = 0;

  //////////////////// 処理 ////////////////////

  // xとして何を選んだら1回の操作で和がいくつ減らせるか、全て求める
  map<long long,int> mp;
  for (int i : a) {
    mp[i]++;
  }

  // 「1回の操作で和がいくつ減らせるか」を全て、大きい順に取り出すpriority_queueに入れる
  priority_queue<long long> pq;
  for (auto [val,num] : mp) {
    pq.emplace(val*num);
  }

  // k回あるいはpqが空になるまで、貪欲に大きい値を捨てる
  for (int i=0; i<k&&!pq.empty(); i++) {
    pq.pop();
  }

  // 残ったものの合計が答え
  while(!pq.empty()) {
    result += pq.top();
    pq.pop();
  }

  //////////////////// 出力 ////////////////////

  cout << result << endl;

  //////////////////// 終了 ////////////////////

  return 0;

}

提出情報

提出日時
問題 C - Vanish
ユーザ wightou
言語 C++23 (GCC 15.2.0)
得点 300
コード長 1274 Byte
結果 AC
実行時間 209 ms
メモリ 27588 KiB

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 300 / 300
結果
AC × 3
AC × 31
セット名 テストケース
Sample sample00.txt, sample01.txt, sample02.txt
All sample00.txt, sample01.txt, sample02.txt, testcase00.txt, testcase01.txt, testcase02.txt, testcase03.txt, testcase04.txt, testcase05.txt, testcase06.txt, testcase07.txt, testcase08.txt, testcase09.txt, testcase10.txt, testcase11.txt, testcase12.txt, testcase13.txt, testcase14.txt, testcase15.txt, testcase16.txt, testcase17.txt, testcase18.txt, testcase19.txt, testcase20.txt, testcase21.txt, testcase22.txt, testcase23.txt, testcase24.txt, testcase25.txt, testcase26.txt, testcase27.txt
ケース名 結果 実行時間 メモリ
sample00.txt AC 1 ms 3432 KiB
sample01.txt AC 1 ms 3432 KiB
sample02.txt AC 1 ms 3432 KiB
testcase00.txt AC 1 ms 3544 KiB
testcase01.txt AC 1 ms 3464 KiB
testcase02.txt AC 177 ms 22804 KiB
testcase03.txt AC 208 ms 27588 KiB
testcase04.txt AC 138 ms 19540 KiB
testcase05.txt AC 208 ms 27576 KiB
testcase06.txt AC 77 ms 13032 KiB
testcase07.txt AC 208 ms 27432 KiB
testcase08.txt AC 16 ms 3660 KiB
testcase09.txt AC 72 ms 4328 KiB
testcase10.txt AC 18 ms 3660 KiB
testcase11.txt AC 73 ms 4452 KiB
testcase12.txt AC 36 ms 3732 KiB
testcase13.txt AC 79 ms 4348 KiB
testcase14.txt AC 81 ms 4372 KiB
testcase15.txt AC 82 ms 4528 KiB
testcase16.txt AC 124 ms 10688 KiB
testcase17.txt AC 148 ms 12000 KiB
testcase18.txt AC 13 ms 3816 KiB
testcase19.txt AC 81 ms 4612 KiB
testcase20.txt AC 116 ms 8296 KiB
testcase21.txt AC 150 ms 12388 KiB
testcase22.txt AC 77 ms 4372 KiB
testcase23.txt AC 209 ms 27452 KiB
testcase24.txt AC 149 ms 12220 KiB
testcase25.txt AC 55 ms 4368 KiB
testcase26.txt AC 65 ms 4600 KiB
testcase27.txt AC 65 ms 4584 KiB