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


Posted in Python onDecember 20, 2014

本文实例讲述了Python解决鸡兔同笼问题的方法,分享给大家供大家参考。具体分析如下:

问题描述

一个笼子里面关了鸡和兔子(鸡有 2 只脚,兔子有 4 只脚,没有例外)。已经知道了笼 子里面脚的总数 a,问笼子里面至少有多少只动物,至多有多少只动物

输入数据

第 1 行是测试数据的组数 n,后面跟着 n 行输入。每组测试数据占 1 行,包括一个正整 数 a (a < 32768)。

输出要求

n 行,每行输出对应一个输入。输出是两个正整数,第一个是最少的动物数,第二个是 最多的动物数,两个正整数用空格分开。如果没有满足要求的情况出现,则输出 2 个 0。

输入样例

2
3
20
输出样例
0 0
5 10

解题思路:

首先考虑特殊情况,当a为奇数时,结果都为0
其次考虑偶数:
假设鸡 i只, 兔j只, 那么a=2*i+4*j
我们要求 i+j的最小和最大值
易知 i+j=(a-2j)/2 当j越大 i+j越小 当j越小 i+j越大
当然我们也可以简单的用权重值来思考,而不需要去想具体的计算过程

python实现如下:

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程序设计有所帮助。

Python 相关文章推荐
Golang与python线程详解及简单实例
Apr 27 Python
浅谈Python中重载isinstance继承关系的问题
May 04 Python
Python常见字典内建函数用法示例
May 14 Python
Python设计模式之状态模式原理与用法详解
Jan 15 Python
Django Celery异步任务队列的实现
Jul 24 Python
使用Pandas对数据进行筛选和排序的实现
Jul 29 Python
Python3视频转字符动画的实例代码
Aug 29 Python
Python BeautifulReport可视化报告代码实例
Apr 13 Python
Python RabbitMQ实现简单的进程间通信示例
Jul 02 Python
pytorch Dropout过拟合的操作
May 27 Python
Python装饰器详细介绍
Mar 25 Python
Python sklearn分类决策树方法详解
Sep 23 Python
Python列表计数及插入实例
Dec 17 #Python
Python二维码生成库qrcode安装和使用示例
Dec 16 #Python
Mac下Supervisor进程监控管理工具的安装与配置
Dec 16 #Python
Python 正则表达式(转义问题)
Dec 15 #Python
python正则表达式中的括号匹配问题
Dec 14 #Python
python的类方法和静态方法
Dec 13 #Python
Python计算程序运行时间的方法
Dec 13 #Python
You might like
yii2 上传图片的示例代码
2018/11/02 PHP
javascript对象的property和prototype是这样一种关系
2007/03/24 Javascript
jQuery插件原来如此简单 jQuery插件的机制及实战
2012/02/07 Javascript
JavaScript中的细节分析
2012/06/30 Javascript
jQuery切换网页皮肤并保存到Cookie示例代码
2014/06/16 Javascript
jQuery实现的感应鼠标悬停图片色彩渐显效果
2015/03/03 Javascript
基于jquery实现省市联动特效
2015/12/17 Javascript
AngularJS手动表单验证
2016/02/01 Javascript
javascript中数组和字符串的方法对比
2016/07/20 Javascript
BootStrap 实现各种样式的进度条效果
2016/12/07 Javascript
JavaScript实现动态增删表格的方法
2017/03/09 Javascript
Bootstrap警告框(Alert)插件使用方法
2017/03/21 Javascript
javascript内存分配原理实例分析
2017/04/10 Javascript
Vue.js组件通信的几种姿势
2017/10/23 Javascript
基于Axios 常用的请求方法别名(详解)
2018/03/13 Javascript
mpvue将vue项目转换为小程序
2018/09/30 Javascript
Vue项目打包部署到iis服务器的配置方法
2019/10/14 Javascript
浅谈微信小程序列表埋点曝光指南
2019/10/15 Javascript
vue 自定义组件的写法与用法详解
2020/03/04 Javascript
[15:15]教你分分钟做大人:狙击手
2014/10/30 DOTA
[43:51]2018DOTA2亚洲邀请赛3月30日 小组赛B组 EG VS Secret
2018/03/31 DOTA
Python中的map()函数和reduce()函数的用法
2015/04/27 Python
Python正则表达式常用函数总结
2017/06/24 Python
将Django项目部署到CentOs服务器中
2018/10/18 Python
对python cv2批量灰度图片并保存的实例讲解
2018/11/09 Python
Django和Flask框架优缺点对比
2019/10/24 Python
python 两个一样的字符串用==结果为false问题的解决
2020/03/12 Python
美国眼镜网站:EyeBuyDirect
2017/04/13 全球购物
乌克兰网上珠宝商店:GoldSoveren
2020/03/31 全球购物
传统软件工程与面向对象的软件工程有什么区别
2012/05/31 面试题
优秀团员事迹材料1000字
2014/08/20 职场文书
公司租房协议书范本
2014/10/08 职场文书
2016年党员公开承诺书范文
2016/03/24 职场文书
创业计划书之烤红薯
2019/09/26 职场文书
教你用Java Swing实现自助取款机系统
2021/06/11 Java/Android
漫画「古见同学有交流障碍症」第25卷封面公开
2022/03/21 日漫