Submission

Status:

(PPPPPPP-SSSSSS)(PPPPPPPPPPP)(PPPPPPPPP)(PP-SSSSSSS)(PP-SSSSSSS)(TSSSSSSSSSSSSS)(TSSSSSSSSSSSSSSSSSSSSS)

Subtask/Task Score:

{0/5}{7/7}{8/8}{0/12}{0/16}{0/28}{0/24}

Score: 15

User: qweqwe

Problemset: แคง (Kang)

Language: cpp

Time: 2.097 second

Submitted On: 2026-03-26 20:55:32

#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using pii = pair<ll,ll>;
using db = long double;

vector<long long> capsize(vector<int> a, vector<int> b) {
	int n=a.size(),m=b.size();
	vector<ll> ans(m);
	vector<int> deck=a;
	ll sum=0;
	unordered_map<ll,ll> cnt;
	for (int i:a){
		cnt[i]++;sum+=i;
	}
	for (int i=0;i<m;i++){
		cnt[b[i]]++;sum+=b[i];
		ll temp=sum;
		ll mx=0;
		priority_queue<ll> pq;
		for (pii j:cnt){
			pq.push(j.first*j.second);
		}
		int cntt=0;
		while (cntt <= i){
			temp-=pq.top();pq.pop();cntt++;
		}
		ans[i]=temp;
	}
	return ans;
}
/*
5 4
6 3 9 6 3
4 6 9 6

19 10 4 0

8 7
1 2 3 4 5 6 7 8
9 10 11 12 13 14 15

5 4
32 78 4 10 9
52 46 33 77

5 4
1 2 3 4 5
4 4 4 4
*/