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中使用摄像头实现简单的延时摄影技术
Mar 27 Python
探索Python3.4中新引入的asyncio模块
Apr 08 Python
使用Nginx+uWsgi实现Python的Django框架站点动静分离
Mar 21 Python
python中的break、continue、exit()、pass全面解析
Aug 05 Python
python+opencv打开摄像头,保存视频、拍照功能的实现方法
Jan 08 Python
python读取tif图片时保留其16bit的编码格式实例
Jan 13 Python
python zip,lambda,map函数代码实例
Apr 04 Python
Python生成随机验证码代码实例解析
Jun 09 Python
python中tab键是什么意思
Jun 18 Python
python爬虫爬取网页数据并解析数据
Sep 18 Python
Python爬取微信小程序通用方法代码实例详解
Sep 29 Python
pandas中DataFrame数据合并连接(merge、join、concat)
May 30 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和XSL stylesheets转换XML文档
2006/10/09 PHP
模拟OICQ的实现思路和核心程序(一)
2006/10/09 PHP
一道求$b相对于$a的相对路径的php代码
2010/08/08 PHP
php调用自己java程序的方法详解
2016/05/13 PHP
PHP之十六个魔术方法详细介绍
2016/11/01 PHP
在JavaScript中通过URL传递汉字的方法
2007/04/09 Javascript
JQuery 学习笔记 选择器之三
2009/07/23 Javascript
javascript if条件判断方法小结
2014/05/17 Javascript
js判断是否按下了Shift键的方法
2015/01/27 Javascript
深入理解JavaScript系列(38):设计模式之职责链模式详解
2015/03/04 Javascript
学习javascript面向对象 理解javascript原型和原型链
2016/01/04 Javascript
原生JavaScript实现滚动条效果
2020/03/24 Javascript
Bootstrap打造一个左侧折叠菜单的系统模板(一)
2016/05/17 Javascript
把json格式的字符串转换成javascript对象或数组的方法总结
2016/11/03 Javascript
Vue.js devtool插件安装后无法使用的解决办法
2017/11/27 Javascript
在vue里面设置全局变量或数据的方法
2018/03/09 Javascript
Webpack打包字体font-awesome的方法示例
2018/04/26 Javascript
React性能优化系列之减少props改变的实现方法
2019/01/17 Javascript
微信小程序点击图片实现长按预览、保存、识别带参数二维码、转发等功能
2019/07/20 Javascript
[06:09]辉夜杯主赛事开幕式
2015/12/25 DOTA
教你使用python画一朵花送女朋友
2018/03/29 Python
PyQt5每天必学之QSplitter实现窗口分隔
2018/04/19 Python
python3实现表白神器
2019/04/09 Python
Python上下文管理器用法及实例解析
2019/11/11 Python
基于Python获取城市近7天天气预报
2019/11/26 Python
Windows 下更改 jupyterlab 默认启动位置的教程详解
2020/05/18 Python
Python使用Matlab命令过程解析
2020/06/04 Python
Windows环境下Python3.6.8 importError: DLLload failed:找不到指定的模块
2020/11/01 Python
Python Selenium库的基本使用教程
2021/01/04 Python
python基于selenium爬取斗鱼弹幕
2021/02/20 Python
什么是Deployment descriptors;都有什么类型的部署描述符
2015/07/28 面试题
linux面试题参考答案(7)
2014/07/24 面试题
秋菊打官司观后感
2015/06/03 职场文书
2015年女工委工作总结
2015/07/27 职场文书
高通2023 年将发布高性能PC处理器
2022/04/29 数码科技
Python sklearn分类决策树方法详解
2022/09/23 Python