蛮力与分治算法(鸡兔脚数)

鸡兔脚数

编程题

题目描述

有一群鸡和一群兔,他们的只数相同,它们的脚数都是三位数,且这两个三位数的各位数字只能是0、1、2、3、4、5。设计一个算法用蛮力求鸡和兔的只数各是多少?它们的脚数各是多少?

输出样例:

求解结果
鸡只数:50,兔只数:50,鸡脚数:100,兔脚数:200
鸡只数:51,兔只数:51,鸡脚数:102,兔脚数:204
鸡只数:55,兔只数:55,鸡脚数:110,兔脚数:220
鸡只数:56,兔只数:56,鸡脚数:112,兔脚数:224
鸡只数:60,兔只数:60,鸡脚数:120,兔脚数:240
鸡只数:61,兔只数:61,鸡脚数:122,兔脚数:244
鸡只数:75,兔只数:75,鸡脚数:150,兔脚数:300
鸡只数:76,兔只数:76,鸡脚数:152,兔脚数:304
鸡只数:100,兔只数:100,鸡脚数:200,兔脚数:400
鸡只数:101,兔只数:101,鸡脚数:202,兔脚数:404
鸡只数:105,兔只数:105,鸡脚数:210,兔脚数:420
鸡只数:106,兔只数:106,鸡脚数:212,兔脚数:424
鸡只数:110,兔只数:110,鸡脚数:220,兔脚数:440
鸡只数:111,兔只数:111,鸡脚数:222,兔脚数:444
鸡只数:125,兔只数:125,鸡脚数:250,兔脚数:500
鸡只数:126,兔只数:126,鸡脚数:252,兔脚数:504

代码实现

#include<stdio.h>
#include <stdbool.h>

void solve()
{
    int a,b,c,d,e,f;
    int x1,x2,y,z;
    for(a=1;a<=5;a++)
        for(b=0;b<=5;b++)
            for(c=0;c<=5;c++)
                for(d=1;d<=5;d++)
                    for(e=0;e<=5;e++)
                        for(f=0;f<=5;f++)
                        {
                            y=a*100+b*10+c;
                            z=d*100+e*10+f;
                            if(y%2!=0||z%4!=0)
                                continue;
                            x1=y/2;
                            x2=z/4;
                            if(x1==x2)
                                printf("鸡只数:%d,兔只数:%d,鸡脚数:%d,兔脚数:%d\n",x1,x2,y,z);
                            
                        }
}
int main(){
    //请在此处开始编写你的代码
    printf("求解结果\n");
    solve();
    return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值