提出 #76464572
ソースコード 拡げる
#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define LONGMAX 1e18
#define INTMAX 2147483647
int main(void)
{
ll N, K, M;
cin >> N >> K >> M;
vector<ll> C(N, 0), V(N, 0);
priority_queue<pair<ll, ll>> all;
priority_queue<ll> remain;
for (ll i = 0; i < N; i++)
{
cin >> C[i] >> V[i];
all.push({V[i], C[i]});
}
set<ll> colors;
ll ans = 0;
while (colors.size() < M)
{
pair<ll, ll> p = all.top();
ll value = p.first;
ll color = p.second;
all.pop();
if (colors.count(color) == 0)
{
// はじめてみる色なので追加
colors.insert(color);
ans += value;
}
else
{
// 用済みの色ならremainに追加
remain.push(value);
}
}
// allに残ってる他の要素をremainに移す
while (all.size() != 0)
{
pair<ll, ll> p = all.top();
ll value = p.first;
ll color = p.second;
all.pop();
remain.push(value);
}
// assert(!remain.empty());
for (ll i = 0, n = K - M; i < n; i++)
{
ans += remain.top();
remain.pop();
}
cout << ans << endl;
return 0;
}
提出情報
| 提出日時 | |
|---|---|
| 問題 | C - Variety |
| ユーザ | lalashvbp |
| 言語 | C++23 (GCC 15.2.0) |
| 得点 | 300 |
| コード長 | 1325 Byte |
| 結果 | AC |
| 実行時間 | 145 ms |
| メモリ | 19000 KiB |
コンパイルエラー
./Main.cpp: In function 'int main()':
./Main.cpp:21:26: warning: comparison of integer expressions of different signedness: 'std::set<long long int>::size_type' {aka 'long unsigned int'} and 'long long int' [-Wsign-compare]
21 | while (colors.size() < M)
| ~~~~~~~~~~~~~~^~~
./Main.cpp:44:12: warning: unused variable 'color' [-Wunused-variable]
44 | ll color = p.second;
| ^~~~~
ジャッジ結果
| セット名 | Sample | All | ||||
|---|---|---|---|---|---|---|
| 得点 / 配点 | 0 / 0 | 300 / 300 | ||||
| 結果 |
|
|
| セット名 | テストケース |
|---|---|
| Sample | sample-01.txt, sample-02.txt, sample-03.txt |
| All | 04.txt, 05.txt, 06.txt, 07.txt, 08.txt, 09.txt, 10.txt, 11.txt, 12.txt, 13.txt, 14.txt, 15.txt, 16.txt, 17.txt, 18.txt, 19.txt, 20.txt, 21.txt, 22.txt, 23.txt, sample-01.txt, sample-02.txt, sample-03.txt |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| 04.txt | AC | 1 ms | 3488 KiB |
| 05.txt | AC | 97 ms | 13136 KiB |
| 06.txt | AC | 139 ms | 18900 KiB |
| 07.txt | AC | 89 ms | 15052 KiB |
| 08.txt | AC | 1 ms | 3536 KiB |
| 09.txt | AC | 1 ms | 3664 KiB |
| 10.txt | AC | 3 ms | 3864 KiB |
| 11.txt | AC | 54 ms | 8572 KiB |
| 12.txt | AC | 145 ms | 15364 KiB |
| 13.txt | AC | 133 ms | 14732 KiB |
| 14.txt | AC | 145 ms | 15604 KiB |
| 15.txt | AC | 126 ms | 14480 KiB |
| 16.txt | AC | 111 ms | 13560 KiB |
| 17.txt | AC | 132 ms | 14136 KiB |
| 18.txt | AC | 123 ms | 13432 KiB |
| 19.txt | AC | 139 ms | 14588 KiB |
| 20.txt | AC | 133 ms | 13888 KiB |
| 21.txt | AC | 107 ms | 13084 KiB |
| 22.txt | AC | 106 ms | 19000 KiB |
| 23.txt | AC | 138 ms | 15004 KiB |
| sample-01.txt | AC | 1 ms | 3584 KiB |
| sample-02.txt | AC | 1 ms | 3492 KiB |
| sample-03.txt | AC | 1 ms | 3432 KiB |