源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

Python解决鸡兔同笼问题的方法

  • 时间:2021-02-10 18:44 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:Python解决鸡兔同笼问题的方法
本文实例讲述了Python解决鸡兔同笼问题的方法,分享给大家供大家参考。具体分析如下: [b]问题描述[/b] 一个笼子里面关了鸡和兔子(鸡有 2 只脚,兔子有 4 只脚,没有例外)。已经知道了笼 子里面脚的总数 a,问笼子里面至少有多少只动物,至多有多少只动物 输入数据 第 1 行是测试数据的组数 n,后面跟着 n 行输入。每组测试数据占 1 行,包括一个正整 数 a (a < 32768)。 输出要求 n 行,每行输出对应一个输入。输出是两个正整数,第一个是最少的动物数,第二个是 最多的动物数,两个正整数用空格分开。如果没有满足要求的情况出现,则输出 2 个 0。 输入样例 2 3 20 输出样例 0 0 5 10 [b]解题思路:[/b] 首先考虑特殊情况,当a为奇数时,结果都为0 其次考虑偶数: 假设鸡 i只, 兔j只, 那么a=2*i+4*j 我们要求 i+j的最小和最大值 易知 i+j=(a-2j)/2 当j越大 i+j越小 当j越小 i+j越大 当然我们也可以简单的用权重值来思考,而不需要去想具体的计算过程 [b]python实现如下: [/b]
[u]复制代码[/u] 代码如下:
n=input() l=list() for k in range(n):     inputNum=input()     #odd     if inputNum%2!=0:         min=max=0     else:     #even     #min         j=inputNum/4         i=inputNum%4/2         min=i+j     #max         max=inputNum/2     l+=[(min,max)]     for a,b in l:     print a,b
希望本文所述对大家的Python程序设计有所帮助。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部