python完成FizzBuzzWhizz问题(拉勾网面试题)示例


Posted in Python onMay 05, 2014

拉勾网面试题

1. 你首先说出三个不同的特殊数,要求必须是个位数,比如3、5、7。
2. 让所有学生拍成一队,然后按顺序报数。
3. 学生报数时,如果所报数字是第一个特殊数(3)的倍数,那么不能说该数字,而要说Fizz;如果所报数字是第二个特殊数(5)的倍数,那么要说Buzz;如果所报数字是第三个特殊数(7)的倍数,那么要说Whizz。
4. 学生报数时,如果所报数字同时是两个特殊数的倍数情况下,也要特殊处理,比如第一个特殊数和第二个特殊数的倍数,那么不能说该数字,而是要说FizzBuzz, 以此类推。如果同时是三个特殊数的倍数,那么要说FizzBuzzWhizz。
5. 学生报数时,如果所报数字包含了第一个特殊数,那么也不能说该数字,而是要说相应的单词,比如本例中第一个特殊数是3,那么要报13的同学应该说Fizz。如果数字中包含了第一个特殊数,那么忽略规则3和规则4,比如要报35的同学只报Fizz,不报BuzzWhizz。

现在,我们需要你完成一个程序来模拟这个游戏,它首先接受3个特殊数,然后输出100名学生应该报数的数或单词。

def check(a, dic, d):
    answer = ''
    if str(a) in str(d):
        return dic[a]
    for x in dic:
        if not (d % x):
            answer = answer + dic[x]
    if not answer:
        return d
    return answer
if __name__ == '__main__':
    a = int(raw_input('input u a: '))
    b = int(raw_input('input u b: '))
    c = int(raw_input('input u c: '))
    dic = {a: 'Fizz', b: 'Buzz', c: 'Whizz'}
    for x in xrange(1, 101):
        print check(a, dic, x)
['Fizz'[(str(3)not in str(i))*4:]or 'Fizz'[i % 3 * 5 : ] + 'Buzz'[i % 5 * 5 : ] + 'Whizz'[i % 7 * 5 : ] or i for i in range(1,101)]
Python 相关文章推荐
python实现监控linux性能及进程消耗性能的方法
Jul 25 Python
python使用pil生成缩略图的方法
Mar 26 Python
基于循环神经网络(RNN)的古诗生成器
Mar 26 Python
django中模板的html自动转意方法
May 27 Python
python找出完数的方法
Nov 12 Python
python进行文件对比的方法
Dec 24 Python
对python3中, print横向输出的方法详解
Jan 28 Python
Python列表切片操作实例总结
Feb 19 Python
python自动循环定时开关机(非重启)测试
Aug 26 Python
Python学习笔记之函数的参数和返回值的使用
Nov 20 Python
python创建子类的方法分析
Nov 28 Python
Django实现任意文件上传(最简单的方法)
Jun 03 Python
使用python实现拉钩网上的FizzBuzzWhizz问题示例
May 05 #Python
python通过scapy获取局域网所有主机mac地址示例
May 04 #Python
python使用内存zipfile对象在内存中打包文件示例
Apr 30 #Python
python数据结构之二叉树的统计与转换实例
Apr 29 #Python
python数据结构之二叉树的遍历实例
Apr 29 #Python
python数据结构之二叉树的建立实例
Apr 29 #Python
python数据结构树和二叉树简介
Apr 29 #Python
You might like
PHP的FTP学习(三)
2006/10/09 PHP
php录入页面中动态从数据库中提取数据的实现
2006/10/09 PHP
php上的memcache和memcached两个pecl库
2010/03/29 PHP
PHP 第三节 变量介绍
2012/04/28 PHP
PHP钩子与简单分发方式实例分析
2017/09/04 PHP
php获取微信openid方法总结
2019/10/10 PHP
TP5框架页面跳转样式操作示例
2020/04/05 PHP
表单JS弹出填写提示效果代码
2011/04/16 Javascript
javascript实现简单的Map示例介绍
2013/12/23 Javascript
javascript中eval和with用法实例总结
2015/11/30 Javascript
详解JavaScript时间格式化
2015/12/23 Javascript
JS从数组中随机取出几个数组元素的方法
2016/08/02 Javascript
IE8利用自带的setCapture和releaseCapture解决iframe的拖拽事件方法
2016/10/25 Javascript
Bootstrap基本组件学习笔记之input输入框组(9)
2016/12/07 Javascript
QRCode.js:基于JQuery的生成二维码JS库的使用
2017/06/23 jQuery
详解vue.js+UEditor集成 [前后端分离项目]
2017/07/07 Javascript
使用bootstraptable插件实现表格记录的查询、分页、排序操作
2017/08/06 Javascript
jquery ajax加载数据前台渲染方式 不用for遍历的方法
2018/08/09 jQuery
Vue组件通信中非父子组件传值知识点总结
2019/12/05 Javascript
如何区分vue中的v-show 与 v-if
2020/09/08 Javascript
好用的Python编辑器WingIDE的使用经验总结
2016/08/31 Python
python3获取当前目录的实现方法
2019/07/29 Python
Django和Flask框架优缺点对比
2019/10/24 Python
python tornado修改log输出方式
2019/11/18 Python
让你的Python代码实现类型提示功能
2019/11/19 Python
python中return的返回和执行实例
2019/12/24 Python
五种Python转义表示法
2020/11/27 Python
澳大利亚电子产品购物网站:Dick Smith
2017/02/02 全球购物
Ben Sherman官方网站:英国男装品牌
2019/10/22 全球购物
趣味体育活动方案
2014/02/08 职场文书
我们的节日端午节活动总结
2015/02/11 职场文书
幼儿园大班个人总结
2015/02/28 职场文书
幼儿园小班教师随笔
2015/08/14 职场文书
公司董事任命书
2015/09/21 职场文书
Mysql Online DDL的使用详解
2021/05/20 MySQL
Java 定时任务技术趋势简介
2022/05/04 Java/Android