第几个幸运数字

到 X 星球旅行的游客都被发给一个整数,作为游客编号。

X 星的国王有个怪癖,他只喜欢数字 3,53,53,5 和 777。

国王规定,游客的编号如果只含有因子:3,5,73,5,73,5,7,就可以获得一份奖品。

我们来看前 101010 个幸运数字是:

35791521252735453\ 5\ 7\ 9\ 15\ 21\ 25\ 27\ 35\ 453 5 7 9 15 21 25 27 35 45

因而第 111111 个幸运数字是: 494949
小明领到了一个幸运数字 590847095875055908470958750559084709587505,他去领奖的时候,人家要求他准确地说出这是第几个幸运数字,否则领不到奖品。

请你帮小明计算一下,590847095875055908470958750559084709587505 是第几个幸运数字。

思路

  • 因为是填空题,并且数字很大,所以用 PythonPythonPython 会更容易 无脑 一些
  • 暴力解有很多种方法,遍历啊,枚举啊之类的,这里记录一种稍微简洁的解法,但是涉及到很大的数相乘,用 C/C++C/C++C/C++ 或者 JavaJavaJava 的话可能会溢出,所以选用 PythonPythonPython
  • 首先定义一个集合和一个列表,初始时集合里面装有 3,5,73,5,73,5,7 三个数,而列表为空
  • 之所以用集合,是因为我们需要里面的元素不重复
  • 列表是用来存储幸运数字的,当列表的最后一个元素为题目所给的幸运数字时,算法结束,解即为列表长度
  • 虽然 PythonPythonPython 中计算列表长度很方便,但为了减少开销,设置一个变量保存列表长度更好

算法如下

  • 1,把集合中的最小元素插入到列表最后一个位置,列表长度+1
  • 2,判断列表最后一个元素是否为题目所给的数,如果是,则输出列表长度,算法结束;如果不是,则进行下一步
  • 3,从列表的第一个元素开始,到最后一个元素(包含最后一个元素),依次与列表的最后一个元素相乘(这一步就体现出了 PythonPythonPython 的优越性),相乘的结果放入集合,转1

代码如下

a = [] # 列表
b = {3, 5, 7} # 集合
cnt = 0 # 列表长度
n = 59084709587505 # 题目给的幸运数字
while True:a.append(min(b))b.remove(min(b))cnt += 1if a[cnt-1] == n:print(cnt)breakfor i in a:b.add(i*a[cnt-1])

【蓝桥杯】第几个幸运数字相关推荐

  1. 【蓝桥杯真题】幸运数字的解决方法

    本文首发于微信公众号:"算法与编程之美",欢迎关注,及时了解更多此系列文章. 问题描述 到x星球旅行的游客都被发给一个整数,作为游客编号.x星的国王有个怪癖,他只喜欢数字3,5和7 ...

  2. 蓝桥杯.第几个幸运数字(数学_因子)

    Question: Solve: 这个题偏逆向思维,一个数只能被3或者5或者7整除,说明这个数可以且只能拆成一堆3,5,7的乘积,那么我们去枚举所有范围内3,5,7的阶乘能够拼凑出的数,知道它们的个数 ...

  3. 2018年蓝桥杯C++A组幸运数字

    到x星球旅行的游客都被发给一个整数,作为游客编号. x星的国王有个怪癖,他只喜欢数字3,5和7. 国王规定,游客的编号如果只含有因子:3,5,7,就可以获得一份奖品. 前10个幸运数字是:3 5 7 ...

  4. 10.python解答蓝桥杯省赛 回文数字

    10.python解答蓝桥杯省赛 回文数字 试题 历届试题 回文数字 提交此题 评测记录 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 观察数字:12321,123321 都有一个 ...

  5. 蓝桥杯c语言试题幸运数,蓝桥杯  历届试题 幸运数  dfs

    时间限制:1.0s   内存限制:256.0MB 问题描述 幸运数是波兰数学家乌拉姆命名的.它采用与生成素数类似的"筛法"生成 . 首先从1开始写出自然数1,2,3,4,5,6,. ...

  6. 【蓝桥杯】【python】数字三角形

    问题描述 虽然我前后用了三种做法,但是我发现只有"优化思路_1"可以通过蓝桥杯官网中的测评,但是如果用c/c++的话,每个都通得过,足以可见python的效率之低(但耐不住人家好用 ...

  7. 蓝桥杯试题算法训练之数字三角形——Python满分解答

    数字三角形 问题描述 输入格式 样例输入 输出格式 样例输出 解题思路 代码实现 问题描述 下图展示出了一个数字三角形. 请编一个程序计算从顶至底的某处的一条路径,使该路径所经过的数字的总和最大. 每 ...

  8. [蓝桥杯]PREV-23.历届试题_数字游戏

    问题描述栋栋正在和同学们玩一个数字游戏.游戏的规则是这样的:栋栋和同学们一共n个人围坐在一圈.栋栋首先说出数字1.接下来,坐在栋栋左手边的同学要说下一个数字2.再下面的一个同学要从上一个同学说的数字往 ...

  9. 【c语言】蓝桥杯基础练习 特殊的数字

    [问题描述] 153是一个非常特殊的数,它等于它的每位数字的立方和,即 153=1*1*1+5*5*5+3*3*3 编程求所有满足这种条件的三位十进制数. [输出格式] 按从小到大的顺序输出满足条件的 ...

  10. [蓝桥杯][历届试题]回文数字-暴力枚举

    题目描述 观察数字:12321,123321 都有一个共同的特征,无论从左到右读还是从右向左读,都是相同的.这样的数字叫做:回文数字. 本题要求你找到一些5位或6位的十进制数字.满足如下要求: 该数字 ...

最新文章

  1. SSM项目搭建一(终)
  2. SetConsoleCtrlHandler 处理控制台消息
  3. 业务爆发式增长,音视频服务如何做好质量监控与优化?
  4. [转]itertools --- 为高效循环而创建迭代器的函数
  5. IOS NSUserDefaults 讲解 用法
  6. 熬之滴水穿石:Spring--精简的J2EE(5)
  7. jsp 弹出窗口设置大全
  8. 多组测试数据01字典树「模板」
  9. win10点文件夹转圈圈假死机
  10. 【初探篇】申请阿里云免费SSL证书并配置https访问实战
  11. Android 应用的逆向和审计
  12. css-超出内容省略号
  13. ORA-12560:TNS:协议适配器错误的解决方案
  14. 用Python绘制奥运五环
  15. 新中式风格有哪些特点?新中式风格装修有哪些注意事项?
  16. python 仪表盘实现_【Python代替Excel】11:用Python做数据仪表盘
  17. c语言设计实验报告答案,武汉理工大学《C语言程序设计》实验报告答案
  18. 深圳哪家服务器速度最快,深圳区域该选择腾讯云哪个节点好?
  19. 信息管理,数据库相关
  20. 微信小程序 Array对象操作

热门文章

  1. URL短链地址生成器Pckd
  2. 机智云平台的SOC方案固件远程升级(OTA)
  3. 用python可以做什么有趣的事情_用python真的可以做很多有趣的事!我自己做了些小项目!...
  4. 华为VoWiFi解决方案技术解析 VOWIFI/VOLTE无缝切换
  5. python 计算标准差和平均值
  6. 电脑、手机软件推荐(多角度良心推荐)
  7. 最小风险 最小错误 贝叶斯决策 Bayes(实例详解)
  8. oracle 11g bootstrap被删除的恢复
  9. Spark 调研报告
  10. 网红用什么软件录视频?从小白到大神,学会这些录屏技巧就够了!