30分样例过,求!!!
查看原帖
30分样例过,求!!!
1188677
sssss791105楼主2024/7/26 11:19
#include<bits/stdc++.h>
using namespace std;
struct e{
	int a;
	int b;
}x[10000000];
bool cmp(e i,e j)
{
	return i.a<j.a;
}
int c[100000];
int c2[100000];
int main()
{
	int n,m,k,ans=0;
scanf("%d%d%d",&n,&m,&k);
for(int i=1;i<=k;i++)
{
	scanf("%d",c+i);//2行输入 
}
for(int i=1;i<=n;i++)
{
	scanf("%d%d",&x[i].a,&x[i].b);
}
for(int i=1;i<=k;i++)
{
    c2[i]=0;
}
sort(x+1,x+n+1,cmp);
for(int i;i<=k;i++)
{
	for(int j=n;j>=1;j--)
	{
		if(x[j].b==i)
		{
			ans+=x[j].a;
			c2[i]++;
		}
	     if(c2[i]==c[i])
	     {
	     	j=0;
		 }
	}
}
printf("%d",ans);
}
2024/7/26 11:19
加载中...