求调!!(贪心)
  • 板块题目总版
  • 楼主LoveYou3000
  • 当前回复1
  • 已保存回复1
  • 发布时间2024/5/17 21:34
  • 上次更新2024/5/18 08:27:13
查看原帖
求调!!(贪心)
1037206
LoveYou3000楼主2024/5/17 21:34

题目:P2095 营养膳食


我的思路是统计每道菜有哪些,降序排序以后一种菜一种菜的吃,若超过了能吃的极限,就抛弃其他的菜。 但是只有30分,WA了四个,RE了三个。

求调!!!


代码如下:

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

int n,m,k;
int num[105],cnt[105],zh,fe;
int a[105][205];
int ans;

bool cmp(int a,int b)
{
	return a>=b;
}

int main()
{
	cin>>n>>m>>k;
	for(int i=1;i<=k;i++)
	{
		cin>>num[i];
	}
	for(int i=1;i<=n;i++)
	{
		cin>>zh>>fe;
		cnt[fe]++;
		a[fe][cnt[fe]]=zh;		
	}
	for(int i=1;i<=n;i++)
	{
		sort(a[i]+1,a[i]+cnt[i]+2,cmp);
	}
	for(int i=1;i<=n;i++)
	{
		for(int j=1;j<=num[i];j++) ans+=a[i][j];
	}
	cout<<ans<<endl;
	return 0;
}
2024/5/17 21:34
加载中...