社区讨论

求问做法正确性(附民间75ptscode)

P14635[NOIP2025] 糖果店参与者 6已保存回复 13

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
13 条
当前快照
1 份
快照标识符
@mil13h7h
此快照首次捕获于
2025/11/30 09:15
3 个月前
此快照最后确认于
2025/12/04 23:30
3 个月前
查看原帖
CPP
/*why i even try*/
#include<bits/stdc++.h>
#define int unsigned long long
using namespace std;
const int mxn=1e5+10;
int mnsum=1e9+10,n,m,ans=0;
struct cy{
	int a,b,sum;
}c[mxn];
bool bi2(cy x,cy y){
	return x.a<y.a;
}
signed main(){
	ios::sync_with_stdio(0);
//	freopen("candy7.in","r",stdin);
	cin>>n>>m;
	for(int i=1;i<=n;i++) cin>>c[i].a>>c[i].b,c[i].sum=c[i].a+c[i].b,mnsum=min(mnsum,c[i].sum);
	ans+=(m/mnsum)*2,m%=mnsum;
	sort(c+1,c+1+n,bi2);
	for(int i=1;i<=n;i++){
		if(m<c[i].a) break;
		else ans++,m-=c[i].a;
	}
	cout<<ans;
	return 0;
}
思路
先贪心x+y值最小的一组ccf糖,再对糖按x从小到大排序,最后贪心的取x最小的糖(此时每一组糖只取一次)
自认为自己的做法跟某些题解完全一样,为什么WA官测#467了QAQ(5过了好神奇

回复

13 条回复,欢迎继续交流。

正在加载回复...