题解 | #百鸡问题# 形式1

百鸡问题

https://www.nowcoder.com/practice/01d161052db64c249a47fc723b4fd5db

#include<cstdio>
#include<iostream>
using namespace std;
int main()
{
	int n;
	cin>>n;
	int a,b,c;
	
	for(a=0;a<=100;a++)
	{
		for(b=0;b<=100-a;b++)
		{
                int c=100-a-b;
				float tiaojian1=5*a+3*b+(float)c/3; 
				if(tiaojian1<=n){
					cout<<"x="<<a<<","<<"y="<<b<<","<<"z="<<c<<endl;
				}
		} 
	}
	return 0;
}

这不是百钱白鸡问题!!!,所以对于a的束缚不是20,对于b的束缚不是33,对于c的束缚也不是由300降为100!!

这里没有考虑钱数的限制,只有鸡的只数的限制,因此,!!对于a的束缚是100,对于b的束缚是100-a;对于c便是100-a-b;

这里写c=100-a-b;是为了减少一层循环,降低时间复杂度。

全部评论

相关推荐

无情咸鱼王的秋招日记之薛定谔的Offer:好拒信,偷了,希望有机会用到
点赞 评论 收藏
分享
1 收藏 评论
分享
牛客网
牛客企业服务