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 相关文章推荐
Python 拷贝对象(深拷贝deepcopy与浅拷贝copy)
Sep 06 Python
Python内置函数之filter map reduce介绍
Nov 30 Python
简单的抓取淘宝图片的Python爬虫
Dec 25 Python
Python numpy 点数组去重的实例
Apr 18 Python
django+echart数据动态显示的例子
Aug 12 Python
Python中IP地址处理IPy模块的方法
Aug 16 Python
kafka监控获取指定topic的消息总量示例
Dec 23 Python
Python之Class&amp;Object用法详解
Dec 25 Python
pytorch获取模型某一层参数名及参数值方式
Dec 30 Python
python统计函数库scipy.stats的用法解析
Feb 25 Python
新手常见Python错误及异常解决处理方案
Jun 18 Python
Scrapy爬虫文件批量运行的实现
Sep 30 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
JAVA/JSP学习系列之七
2006/10/09 PHP
php中jQuery插件autocomplate的简单使用笔记
2012/06/14 PHP
PHP中“简单工厂模式”实例代码讲解
2012/09/04 PHP
探讨PHP中OO之静态关键字以及类常量的详解
2013/06/07 PHP
php实现猴子选大王问题算法实例
2015/04/20 PHP
PHP7新特性之抽象语法树(AST)带来的变化详解
2018/07/17 PHP
PHP面向对象程序设计之接口的继承定义与用法详解
2018/12/20 PHP
php实现QQ小程序发送模板消息功能
2019/09/18 PHP
onpropertypchange
2006/07/01 Javascript
一页面多XMLHttpRequest对象
2007/01/22 Javascript
javascript入门·图片对象(无刷新变换图片)\滚动图像
2007/10/01 Javascript
JS小功能(操作Table--动态添加删除表格及数据)实现代码
2013/11/28 Javascript
js代码实现无缝滚动(文字和图片)
2015/08/20 Javascript
原生js实现鼠标跟随效果
2017/02/28 Javascript
js评分组件使用详解
2017/06/06 Javascript
webpack+vue中使用别名路径引用静态图片地址
2017/11/20 Javascript
jQuery动态添加元素无法触发绑定事件的解决方法分析
2018/01/02 jQuery
VUE+elementui面包屑实现动态路由详解
2019/11/04 Javascript
浅析Python多线程下的变量问题
2015/04/28 Python
解决Python运行文件出现out of memory框的问题
2018/12/03 Python
使用python接入微信聊天机器人
2020/03/31 Python
Python2和Python3中@abstractmethod使用方法
2020/02/04 Python
在matplotlib中改变figure的布局和大小实例
2020/04/23 Python
Python字典取键、值对的方法步骤
2020/09/30 Python
荷兰演唱会和体育比赛订票网站:viagogo荷兰
2018/04/08 全球购物
英国综合网上购物商城:The Hut
2018/07/03 全球购物
小学生打架检讨书
2014/01/26 职场文书
《富饶的西沙群岛》教学反思
2014/04/09 职场文书
售后客服工作职责
2014/06/16 职场文书
营销与策划专业求职信
2014/06/20 职场文书
后进基层党组织整改方案
2014/10/25 职场文书
离婚被告答辩状
2015/05/22 职场文书
2019年思想汇报
2019/06/20 职场文书
详解RedisTemplate下Redis分布式锁引发的系列问题
2021/04/27 Redis
Spring Data JPA使用JPQL与原生SQL进行查询的操作
2021/06/15 Java/Android
vue项目打包后路由错误的解决方法
2022/04/13 Vue.js