c++鸡兔同笼

这篇具有很好参考价值的文章主要介绍了c++鸡兔同笼。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

如何用c++编写鸡兔同笼

首先,我们需要知道我们的思路

解鸡兔同笼的方法有三种:

1、暴力枚举;

2、假设法:假设全是兔或全是鸡,……;

3、列方程;

今天就用用第一种方法解鸡兔同笼;

第一种方法:

#include<bits/stdc++.h>
using namespace std;
int main(){
    int a,b,ji,tu;
    bool h=0;//判断是否得到数目
    cout<<"输入头数";cin>>a;  //头
    cout<<"输入腿数";cin>>b;  //腿
    for(int i=1;i<=a;i++){      //鸡
        for(int j=1;j<=a;j++){  //兔
            if(i+j!=a)continue;
            else{
                if(i*2+j*4==b){
                    ji=i;tu=j;
                    h=1;
                    break;
                }
            }
        }
        if(h==1)break;
    }
    cout<<"鸡有"<<ji<<"只"<<endl;
    cout<<"兔有"<<tu<<"只"<<endl;
    return 0;
}
可如果这么写,它很有可能时间超限。比如:头有100个,就要循环1万次;

可如何优化代码呢?

在的代码里,写了两个for循环,可不可以只写一个呢?

可以。

优化后:

#include<bits/stdc++.h>
using namespace std;
int main(){
    int a,b,ji,tu;
    bool h=0;//判断是否得到数目
    cout<<"请输入头数";cin>>a;  //头
    cout<<"请输入腿数";cin>>b;  //腿
    for(int i=1;i<=a;i++){      //鸡
        int j=a-i;              //兔
        if(i*2+j*4==b){
            ji=i;tu=j;
            h=1;
            break;
        }
        if(h==1)break;
    }
    cout<<"鸡有"<<ji<<"只"<<endl;
    cout<<"兔有"<<tu<<"只"<<endl;
    return 0;
}
鸡兔同笼c++语言,c++,算法

 文章来源地址https://www.toymoban.com/news/detail-734899.html

到了这里,关于c++鸡兔同笼的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • python中的鸡兔同笼问题,鸡兔同笼python多种方法

    这篇文章主要介绍了python中的鸡兔同笼问题,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获,下面让小编带着大家一起了解一下。 a 为头的个数, b 为脚的个数, x 为鸡的个数, y 为兔的个数 方法一 已知头和腿的个数 运行结果 方法二 输入头

    2024年04月13日
    浏览(72)
  • 鸡兔同笼python程序怎么写,python中鸡兔同笼的问题

    这篇文章主要介绍了python鸡兔同笼编程运行结果,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获,下面让小编带着大家一起了解一下。 目录 一、编程题目 二、输入输出样例 三、程序实现 四、测试         大约在1500年前,《孙子算经

    2024年04月11日
    浏览(55)
  • python鸡兔同笼

    本关任务:编写一个能计算笼中有多少只鸡和多少只兔的小程序。 (解题代码不唯一,每关提供一种) 第1关 古代鸡兔同笼 第2关 现代鸡兔同笼 第3关 鸡兔同笼套餐 每一天的拼搏,都是给人生最好的答复。加油!😊

    2024年02月05日
    浏览(38)
  • python编程:实现计算鸡兔同笼问题

    目录 一、编程题目 二、输入输出样例 三、程序实现 四、测试         大约在1500年前,《孙子算经》中就记载了这个有趣的问题:“今有雉兔同笼,上有三十五头,下有九十四足,问雉兔各几何?”意思是,有若干只鸡和兔子关在同一个笼子里,从上面数有20个头,从下

    2024年02月16日
    浏览(35)
  • 用python解决鸡兔同笼的问题

    朋友们大家好,今天我们来用python解决鸡兔同笼的问题。 我们可以同过for循环来解决这个问题。但首先,我们得先知道有多少个头,多少个腿。所以我们先用input()。 然后再用for循环来解决。 我们来看看效果: 可以看到 ,程序告诉了我们鸡与兔子的数量。 本文章的内容就结

    2024年02月07日
    浏览(43)
  • 使用python语解决一个小学数学题----鸡兔同笼问题

    问: 鸡(chicken)和兔子(rabbit)被关进一只笼子里,已知头(head)一共有40个,腿(leg)一共有120个,请问笼子里有几只鸡,几只兔子? [root@localhost /]# vim 1.py 编辑: head = 40 leg = 120 for chicken in range(0,head): rabbit = head - chicken if chicken * 2 + rabbit * 4 == 120: print chicken print rabbit [

    2023年04月08日
    浏览(39)
  • 【MOSS】首个开源免费的「中国版ChatGPT」MOSS!全新插件系统,能上网,会鸡兔同笼——复旦开源

    GitHub - OpenLMLab/MOSS: An open-source tool-augmented conversational language model from Fudan University An open-source tool-augmented conversational language model from Fudan University 目录 🗒️ 开源清单 模型 数据/

    2024年02月04日
    浏览(41)
  • 《数据结构、算法与应用C++语言描述》-列车车厢重排问题

    完整可编译运行代码见:Github::Data-Structures-Algorithms-and-Applications/_10Train_carriages_rearrangement/ 一列货运列车有 n 节车厢,每节车厢要停靠在不同的车站。假设 n个车站从 1 到n 编号,而且货运列车按照从n到1的顺序经过车站。车厢的编号与它们要停靠的车站编号相同。为了便于从

    2024年04月10日
    浏览(67)
  • 机器人寻路算法双向A*(Bidirectional A*)算法的实现C++、Python、Matlab语言

    最近好久没更新,在搞华为的软件挑战赛(软挑),好卷只能说。去年还能混进32强,今年就比较迷糊了,这东西对我来说主要还是看运气,毕竟没有实力哈哈哈。 但是,好歹自己吭哧吭哧搞了两周,也和大家分享一下自己的收获吧,希望能为后来有需要的同学提供一些帮助

    2024年04月13日
    浏览(44)
  • 【华为OD机试真题 C++语言】68、矩阵扩散 | 机试题+算法思路+考点+代码解析

    🍂个人博客首页: KJ.JK   🍂专栏介绍: 华为OD机试真题汇总,定期更新华为OD各个时间阶段的机试真题,每日定时更新,本专栏将使用C++语言进行更新解答,包含真题,思路分析,代码参考,欢迎大家订阅学习 🎃题目描述 存在一个m*n的二维数组,其成员取值范围为0或1

    2024年02月16日
    浏览(61)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包