蛮力法(一):穷举

也许有人觉得蛮力法没有一点技术含量,只是单纯的将所有的情况列举起来,然后在进行判断;是一种没有任何技术思维;其实不是这样的;在实在找不到规律的时候,递归可以帮我们找到正确的答案并将答案输出:

1:穷举需要知道穷举的数字范围和找到穷举的约束条件;

2:百钱百鸡问题。中国古代数学家张丘建在《算经》中提出了著名的“百钱百鸡问题”:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一;百钱买百鸡,翁、母、雏各几何?

此问题是一个比较经典的穷举问题,根据钱的总数通过确定鸡翁,鸡母,鸡雏的数量的大小;用三套for循环来控制计算钱数,通过不断的验证来得到我们要求的结果的数量然后将它输出;



#include<iostream>
using namespace std;
int main()
{
    int x,y,z;
    for(x=1; x<=20; x++)
        for(y=1; y<=34; y++)
            for(z=1; z<=100; z++)
                if(x+y+z==100&&5*x+3*y+z/3==100)
                {


                    cout<<"the cock  number is  "<<x<<endl;
                    cout<<"the hen   number is  "<<x<<endl;
                    cout<<"the chick number is  "<<x<<endl;
                    cout<<endl;
                }





    return 0;




}通过循环来判断结果是否符合自己的要求,通过穷举得到自己最后的答案;


评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值