日志5

百元买百鸡问题运用穷举法,代码如下:
#include<iostream>
using namespace std;
int main()
{
int a,b,c,n;
cin>>n;int flag=0;
for(int a=1;a<=n/3;a++)
{
for(int b=1;b<=n/2;b++)
{
c=n-a-b;
if(a*3+b*2+c*0.5==n)
{
flag=1;
cout<<a<<" "<<b<<" "<<c<<endl;
break;
}
}
}
 if(!flag) cout<<"Not found!";
}

穷举法又称为枚举法或者蛮力法,是一种简单直接解决问题的方法,常常是基于问题的直接描述去编写程序,比如说求n的阶乘,那么就直接一个循环n次的for循环。穷举法依赖的基本技术是遍历,也就是采用一定策略依次处理待求解问题的所有元素。对于穷举法自身的优化,一般只能减少其执行的系数,但是数量级不会改变。
全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务