竞赛
考级
鸡兔同笼逻辑分析(不会鸡兔同笼的同学有福啦!!!) 这次给大家分析一下鸡兔同笼的逻辑,很多同学还停留在枚举暴力解的阶层上(暴力也是一种美),但告诉同学,数学也会考鸡兔同笼的,所以不要想着暴力定天下啦! 废话少说,直接开讲 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 首先,题目一般会告诉我们总头数和总脚数,而且会有同笼对象(例如鸡兔同笼的同笼对象就是鸡和兔,这里以鸡和兔为同笼对象),接下来用一个图来表示: 最后,附上珍贵的代码: 给我一个大大的赞吧,你们的赞是我最大的制作动力~~
空降坐标:CP002966 请看代码
砍JIO法:先设所有的都为坤,(Y-X*2)少的就是兔子2只JIO的数量,也就直接/2就行了(兔子的数量)
数学老师狂喜题解 先假设全都是兔子(因为兔子腿比鸡多) 那么会有4x(头的数量)条腿。 举例:40个头,100条腿, 4x = 160 为什么4x比y大呢? 因为这x只动物里还有鸡,鸡只有两条腿,比兔子少两条, 所以鸡的数量 = (4x - 100) / (4 - 2) 注:4 - 2是两种动物腿条数的差。 鸡的数量求出来了, 兔子就求不出来了 兔子就好求了, 兔子数量 = x - 鸡的数量 最后,如果你真的这么聪明 上代码:
提示:如果知道做法想直接看代码,请往下翻 如果你已经上过小学四年级,那么你一定学过学校那“可爱”的鸡兔同笼解法,甚至如果你鸡兔同笼做得多,简直会怀疑人生……今天我们来说一种简单的鸡兔同笼解法 正片开始: 先来看一道经典的鸡兔同笼,呃…让我找一下…找不到,那我们暂且用本题的输入输出样例作为“经典”鸡兔同笼题目。那么为了让大家不至于觉得索然无味,我们必须得用好玩的做法+好玩的语言讲述给大家。 回顾一下题目,有40支头,100个腿,那么不妨思考一下你会怎么做,我透过屏幕看见你挺俊俏,那我们就暂且叫你“小帅”吧! 聪明的小帅做的第一步,只见他使用了**?声音转换器(未命名)对动物们喊:“雷的神俺的加特慢(Ladies and gentlemen),把你们的腿抬起来一只!” 只见鸡把鸡腿复式折叠以拱起肌肉更加刺激,以下将这个过程简称“鸡鸡复肌激(唧唧复唧唧)” 只见兔把细腿一抬,感觉腿要废,一脸懵逼的它进行了思考人生,以下将这个过程简称“兔废懵进(突飞猛进)” 此时由于所有动物都抬起一只腿,所以此时还有100-40=60只腿。 那么我们聪明的小帅再次发号了这个口令,在又经历了“鸡鸡复肌激”和“兔废懵进”的过程后鸡“躺平了”,兔“站起来了”。 此时还剩下60-40=20只腿,而这20条腿全是兔子的(毕竟鸡都躺平了),此时一只兔子只有2条腿,那么我们用20/2=10,就得到了兔的数量,剩的你就会了吧! 代码部分: 框架会吧! 然后,我们按照题目要求新建变量并输入,分别代表头数和腿数。 然后接下来是最重要的算法部分,看过我写的解法一定知道过程主要分为: 1.“唧唧复唧唧”“突飞猛进” *2 2.算兔数 3.算鸡 代码表示如下: 最后输出就好了 完整代码: 生活索然无味,@一只学c的熊治愈人类 关注一只学c的熊 再见!
本人小学生,表达可能有些不好,请不要介意
A378.鸡兔同笼
空降: CP002966 代码如下: 此题可结合数学中鸡兔同笼的公式来解
#include <iostream> using namespace std; int x,y; int main() { cin>>x>>y; int tu=(y-x*2)/2; int ji=x-tu; printf("%d\n%d",ji,tu); return 0; }
最“简单”解法
提交答案之后,这里将显示提交结果~