30分大佬求调
查看原帖
30分大佬求调
1433965
ofthemoon楼主2024/9/5 20:49
#include<bits/stdc++.h>
using namespace std;
int n,m,k,z[105],ans;
struct Node{
	int a,b;
}f[200];
bool cmp(Node x,Node y)
{
	if(x.b != y.b)
		return x.b<y.b;
	else
		return x.a>y.a;
}
int main()
{
	cin>>n>>m>>k;
	for(int i=1; i<=k; i++)
		cin>>z[i];
	for(int i=1; i<=n; i++)
		cin>>f[i].a>>f[i].b;
	sort(f+1,f+1+n,cmp);
	for(int i=1; i<=n; i++)
	{
		if(z[f[i].b] == 0)
			continue;
		else
		{
			z[f[i].b]--;
			ans+=f[i].a;
		}
	}
	cout<<ans;
	return 0;
}
2024/9/5 20:49
加载中...