![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
蓝桥杯复习
JJ墨楠
这个作者很懒,什么都没留下…
展开
-
高级排序算法____堆排序(广泛应用于大数据量求前n个最大值 或者前n个最小值)
堆排序堆排序(看一万遍视频不如自己亲自手撸一次伪代码)学习堆排序前的预备知识初步建立大顶堆伪代码初步建立大顶堆的动图堆排序步骤总结:看视频学习只是初步建立堆排序的印象,想要理解必须手写出排序过程再转化为伪代码,再验证才是真正掌握 堆排序(看一万遍视频不如自己亲自手撸一次伪代码) 学习堆排序前的预备知识 二叉树 :至少了解 什么是完全二叉树, 二叉树的节点和左右子节点的关系 二叉树的BFS(广度优先遍历) 理解即可; 有一定的数组排序训练 全新的 KaTeX数学公式 语法; 增加了支持甘特图的mermaid原创 2021-04-24 22:08:10 · 162 阅读 · 0 评论 -
蓝桥杯练习系统 试题 算法训练 二进制数数
小知识:python进制转换 bin(10)[2:] #10转换为2进制的并且去除前缀0b oct(10)[2:] #10转换为8进制的并且去除前缀0o hex(10)[2:] #10转换为16进制的并且去除前缀0x 题目: 问题描述 给定L,R。统计[L,R]区间内的所有数在二进制下包含的“1”的个数之和。 如5的二进制为101,包含2个“1”。 输入格式 第一行包含2个数L,R 输出格式 一个数S,表示[L,R]区间内的所有数在二进制下包含的“1”的个数之和。 样例输入 2 3原创 2020-09-11 20:40:20 · 218 阅读 · 0 评论 -
翻硬币 (贪心)
问题描述 小明正在玩一个“翻硬币”的游戏。 桌上放着排成一排的若干硬币。我们用 * 表示正面,用 o 表示反面(是小写字母,不是零)。 比如,可能情形是:oo*oooo 如果同时翻转左边的两个硬币,则变为:oooo***oooo 现在小明的问题是:如果已知了初始状态和要达到的目标状态,每次只能同时翻转相邻的两个硬币,那么对特定的局面,最少要翻动多少次呢? 我们约定:把翻动相邻的两个硬币叫做一步操作,那么要求: 输入格式 两行等长的字符串,分别表示初始状态和要达到的目标状态。每行的长度<1000 输出格转载 2020-08-24 16:42:04 · 129 阅读 · 0 评论 -
每周一题之1 3n+1问题
[问题描述] 考虑如下的序列生成算法:从整数 n 开始,如果 n 是偶数,把它除以 2;如果 n 是奇数,把它乘 3 加1。用新得到的值重复上述步骤,直到 n = 1 时停止。例如,n = 22 时该算法生成的序列是: 22,11,34,17,52,26,13,40,20,10,5,16,8,4,2,1 人们猜想(没有得到证明)对于任意整数 n,该算法总能终止于 n = 1。这个猜想对于至少 1 000 000内的整数都是正确的。 对于给定的 n,该序列的元素(包括 1)个数被称为 n 的循环节长度。在上述原创 2020-08-19 16:21:57 · 395 阅读 · 0 评论 -
蓝桥杯 2019 修改数组
题目修改数组 这题思路:第一步,先将数据存放在data列表中 知题目为,Ai在A1~Ai-1是否出现过,这里出现直接用Python的 in 来判断即可 直接上代码: import datetime n = int(input()) data = list(map(int, input().strip().split())) begin_time = datetime.datetime.now() #判断运行时间的 for i in range(1, len(data)): while Tr原创 2020-06-14 21:07:37 · 1237 阅读 · 0 评论 -
蓝桥杯 2019 数的分解
题目: 试题 D:数的分解 本题总分:10 分 【问题描述】 把 2019 分解成 3 个各不相同的正整数之和,并且要求每个正整数都不包含数字 2 和 4,一共有多少种不同的分解方法? 注意交换 3 个整数的顺序被视为同一种方法,例如 1000+1001+18 和 1001+1000+18 被视为同一种。 【答案提交】 这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一 个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。 ———————————————— 思路原创 2020-06-14 12:27:04 · 767 阅读 · 0 评论 -
蓝桥杯 2019 JAVA A组 最大降雨量
题目: 试题四:最大降雨量 【问题描述】 由于沙之国长年干旱,法师小明准备施展自己的一个神秘法术来求雨。 这个法术需要用到他手中的49张法术符,上面分别写着1至49这49个数字。法术一共持续7周,每天小明都要使用一张法术符,法术符不能重复使用 每周,小明施展法术产生的能量为这周7张法术符上数字的中位数。法术施展完7周后,求雨将获得成功,降雨量为7周能量的中位数。 由于干旱太久,小明希望这次求雨的降雨量尽可能大,请大最大值是多少? 【答案提交】 这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一原创 2020-06-14 11:45:55 · 527 阅读 · 1 评论 -
蓝桥杯 2019年号字串
题目: 试题 B: 年号字串 【问题描述】小明用字母 A 对应数字 1, B 对应 2,以此类推,用 Z 对应 26。对于 27以上的数字,小明用两位或更长位的字符串来对应,例如 AA 对应 27, AB 对应 28, AZ 对应 52, LQ 对应 329。请问 2019 对应的字符串是什么? ———————————————— 思路:这题考的是进制转换, 直接手算就行了,数据为2019又不大: 如AA: 27%26=1 ->对应A 27//26=1 1%26=1 ->对应A 所以27(10进原创 2020-06-14 10:37:36 · 1509 阅读 · 6 评论 -
2019 蓝桥杯 数列求值
题目: B.数列求值 【问题描述】 给定数列 1, 1, 1, 3, 5, 9, 17, …,从第 4 项开始,每项都是前 3 项的和。求 第 20190324 项的最后 4 位数字。 思路,这题一看就是暴力推导: 所以我一开始写出了这样的代码: def f(): a,b,c=1,1,1 while True: yield a a,b,c=b,c,(a+b+c)%10000 #我开始的错误代码为 #a,b,c=b,c,(a+b+c) inde原创 2020-06-12 21:27:05 · 715 阅读 · 0 评论 -
蓝桥杯 2019试题 A: 平方和
题目: 平方和 【问题描述】 小明对数位中含有 2、0、1、9 的数字很感兴趣 ,在 1 到 40 中这样的数 包 括 1、2、9、10 至 32、39 和 40,共 28 个,他们的和是 574,平方和是 14362。 注意,平方和是指将每个数分别平方后求和。 请问,在 1 到 2019 中,所有这样的数的平方和是多少? ———————————————— 解题思路: 暴力枚举,因为数据范围是1-2019,这么小的范围不暴力浪费了 读题要读懂,读清楚,其实就是找数位中含有2,0,1,9中的任意一个都可以,原创 2020-06-12 20:48:37 · 597 阅读 · 0 评论 -
蓝桥杯 2018-.第几个幸运数
题目: 到x星球旅行的游客都被发给一个整数,作为游客编号。 x星的国王有个怪癖,他只喜欢数字3,5和7。 国王规定,游客的编号如果只含有因子:3,5,7,就可以获得一份奖品。 我们来看前10个幸运数字是: 3 5 7 9 15 21 25 27 35 45 因而第11个幸运数字是:49 小明领到了一个幸运数字 59084709587505,他去领奖的时候,人家要求他准确地说出这是第几个幸运数字,否则领不到奖品。 请你帮小明计算一下,59084709587505是第几个幸运数字。 需要提交的是一个整数,请不要原创 2020-06-12 08:59:20 · 201 阅读 · 0 评论 -
蓝桥杯 2018-星期一
题目: 整个20世纪(1901年1月1日至2000年12月31日之间),一共有多少个星期一? (不要告诉我你不知道今天是星期几) 注意:需要提交的只是一个整数,不要填写任何多余的内容或说明文字。 思路:先到日历查看在2000年12月31日这个日期以前最近的星期一 查日历可知:为2000年12月26日 用Excel计算:2000年12月26日-1901年1月1日=多少天 Excel计算得到为 36524天 答案为:36524//7 ...原创 2020-06-11 19:46:36 · 482 阅读 · 0 评论 -
蓝桥杯 2018—1.分数
题目: 1/1 + 1/2 + 1/4 + 1/8 + 1/16 + … 每项是前一项的一半,如果一共有20项, 求这个和是多少,结果用分数表示出来。 类似: 3/2 当然,这只是加了前2项而已。分子分母要求互质。 注意: 需要提交的是已经约分过的分数,中间任何位置不能含有空格。 请不要填写任何多余的文字或符号。 改题为省赛的C/C++的填空题第一题: 由题目知:1/1+1/2+1/4+…一共有20项,看题可得推导式 1/20+1/21+1/22+…+1/219这样的推导式 可知分母为:2*19即2的19次原创 2020-06-11 19:26:31 · 1152 阅读 · 0 评论 -
蓝桥杯 2014——神奇算式
3.标题:神奇算式 由4个不同的数字,组成的一个乘法算式,它们的乘积仍然由这4个数字组成。 比如: 210 x 6 = 1260 8 x 473 = 3784 27 x 81 = 2187 都符合要求。 如果满足乘法交换律的算式算作同一种情况,那么,包含上边已列出的3种情况,一共有多少种满足要求的算式。 请填写该数字,通过浏览器提交答案,不要填写多余内容(例如:列出所有算式)。 ———————————————— 这题的题目要求: 1:4个不同的数字 2:由题目知,乘法算式主要有两种情况:第一种,原创 2020-06-11 11:32:56 · 389 阅读 · 1 评论 -
蓝桥杯 暴力法 填空题集
题目1 : 1.标题:猜年龄 小明带两个妹妹参加元宵灯会。别人问她们多大了,她们调皮地说:“我们俩的年龄之积是年龄之和的6倍”。小明又补充说:“她们可不是双胞胎,年龄差肯定也不超过8岁啊。” 请你写出:小明的较小的妹妹的年龄。 从题目提取信息 设较小的妹妹为a,另一个妹妹就为b: a*b==6(a+b), a!=b, 0<a-b<=8 暴力法之接两个for循环 for a in range(1,100): for b in range(1,100): if a==b:原创 2020-06-11 11:13:02 · 320 阅读 · 0 评论 -
蓝桥杯 2015 熊怪吃核桃
1.熊怪吃核桃 森林里有一只熊怪,很爱吃核桃。不过它有个习惯,每次都把找到的核桃分成相等的两份,吃掉一份,留一份。如果不能等分,熊怪就会扔掉一个核桃再分。第二天再继续这个过程,直到最后剩一个核桃了,直接丢掉。 有一天,熊怪发现了1543个核桃,请问,它在吃这些核桃的过程中,一共要丢掉多少个核桃。 请填写该数字(一个整数),不要填写任何多余的内容或说明文字。 ———————————————— 读懂题目很重要,直接上代码 n=1543 c=0 while True: if n!=0: i原创 2020-06-09 11:21:24 · 152 阅读 · 0 评论 -
蓝桥杯 2016年 搭积木
题目: 第三题:搭积木 题目描述 小明最近喜欢搭数字积木, 一共有10块积木,每个积木上有一个数字,0~9。 搭积木规则: 每个积木放到其它两个积木的上面,并且一定比下面的两个积木数字小。 最后搭成4层的金字塔形,必须用完所有的积木。 下面是两种合格的搭法: 0 1 2 3 4 5 6 7 8 9 0 3 1 7 5 2 9 8 6 4 请你计算这样的搭法一共有多少种? 请填表示总数目的数字。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。 一个月的复习时间从小白到争取省二,我只能使用暴原创 2020-06-08 21:19:51 · 234 阅读 · 0 评论 -
PAT 1605单身狗
题目: “单身狗”是中文对于单身人士的一种爱称。本题请你从上万人的大型派对中找出落单的客人,以便给予特殊关爱。 输入格式: 输入第一行给出一个正整数 N(≤ 50 000),是已知夫妻/伴侣的对数;随后 N 行,每行给出一对夫妻/伴侣——为方便起见,每人对应一个 ID 号,为 5 位数字(从 00000 到 99999),ID 间以空格分隔;之后给出一个正整数 M(≤ 10 000),为参加派对的总人数;随后一行给出这 M 位客人的 ID,以空格分隔。题目保证无人重婚或脚踩两条船。 输出格式: 首先第一行输原创 2020-06-08 09:47:12 · 183 阅读 · 1 评论 -
蓝桥杯,算法复习--枚举(暴力)法
题目: 逐个考察某类事情所有可能的情况,并逐一进行检验,这种方法叫做枚举。 在采用枚举的方法进行问题求解时,要注意以下三个问题: (1)建立简洁的数学模型; (2)减小搜索的空间; (3)采用合适的搜索顺序。 问题描述 形如a3= b3 + c3 + d3的等式被称为完美立方等式。例如123= 63 + 83 + 103 。编写一个程序,对任给的正整数N (N≤100),寻找所有的四元组(a, b, c, d),使得a3 = b3 + c3 + d3,其中a,b,c,d 大于 1, 小于等于N,且b<原创 2020-06-07 10:38:06 · 1248 阅读 · 0 评论 -
蓝桥杯 猴子吃包子问题
问题描述 从前,有一只吃包子很厉害的猴子,它可以吃无数个包子,但是,它吃不同的包子速度也不同;肉包每秒钟吃x个;韭菜包每秒钟吃y个;没有馅的包子每秒钟吃z个;现在有x1个肉包,y1个韭菜包,z1个没有馅的包子;问:猴子吃完这些包子要多久?结果保留p位小数。 输入格式 输入1行,包含7个整数,分别表示吃不同包子的速度和不同包子的个数和保留的位数。 输出格式 输出一行,包含1个实数,表示吃完所有包子的时间。 样例输入 4 3 2 20 30 15 2 样例输出 22.50 数据规模和约定 0&l原创 2020-06-06 09:37:05 · 280 阅读 · 0 评论 -
蓝桥杯 判断是否为闰年
问题描述 给定一个年份,判断这一年是不是闰年。 当以下情况之一满足时,这一年是闰年: 年份是4的倍数而不是100的倍数; 年份是400的倍数。 其他的年份都不是闰年。 输入格式 输入包含一个整数y,表示当前的年份。 输出格式 输出一行,如果给定的年份是闰年,则输出yes,否则输出no。 说明:当试题指定你输出一个字符串作为结果(比如本题的yes或者no,你需要严格按照试题中给定的大小写,写错大小写将不得分。 样例输入 2013 样例输出 no 题目的意思感觉是考 and在、操作符的短路问题和逻辑原创 2020-06-06 09:13:15 · 376 阅读 · 0 评论 -
蓝桥杯的01字串
我开始觉得是用c语言的按位与,按位或操作,或者字符串的操作 但是我用的是python啊,想了一下,感觉找不到合适的知识点来解, 直接上暴力法试试,笨办法总比没办法好 for i in range(2): for j in range(2): for h in range(2): for f in range(2): for s in range(2): print(str(i)+str(j原创 2020-06-05 20:24:57 · 107 阅读 · 0 评论 -
蓝桥杯的字母图形题目
问题描述 利用字母可以组成一些美丽的图形,下面给出了一个例子: ABCDEFG BABCDEF CBABCDE DCBABCD EDCBABC 这是一个5行7列的图形,请找出这个图形的规律,并输出一个n行m列的图形。 输入格式 输入一行,包含两个整数n和m,分别表示你要输出的图形的行数的列数。 输出格式 输出n行,每个m个字符,为你的图形。 样例输入 5 7 样例输出 ABCDEFG BABCDEF CBABCDE DCBABCD EDCBABC 刚开始我的代码是这样的 def cut(n,m):原创 2020-06-05 20:08:17 · 165 阅读 · 0 评论 -
蓝桥杯踩坑,题目输出整数
题目 问题描述 给出一个包含n个整数的数列,问整数a在数列中的第一次出现是第几个。 输入格式 第一行包含一个整数n。 第二行包含n个非负整数,为给定的数列,数列中的每个数都不大于10000。 第三行包含一个整数a,为待查找的数。 输出格式 如果a在数列中出现了,输出它第一次出现的位置(位置从1开始编号),否则输出-1。 刚开始我想到了python的列表的index()函数,然后写出了这样的代码` n=int(input()) li=list(map(int,input().split(’ ‘))) k=in原创 2020-06-05 19:01:46 · 449 阅读 · 0 评论 -
关于Python的生成器的初步理解
在b站上看了Python的高级应用,从可迭代-》迭代协议-》迭代器==》生成器: 理清了以前看别人代码的一点思绪: 例题: 斐波那契序列: f(0)=0,f(1)=1,f(2)=1,f(3)=f(1)+f(2)=2,…f(n)=f(n-1)+f(n-2) 当使用普通的递归思想: def fib(index): if 0<index<=2: return 1 elif index==0: return 0 else: return fib(index-1)+fib(index-2原创 2020-06-05 16:12:04 · 89 阅读 · 0 评论 -
Python实现杨辉三角的别人解题思路,超级清晰
超级清晰 从这题我得到我的不足: 1,range()方法的使用 2.生成器,构造器方面知识欠缺 3.列表的基本+,*运算不熟悉 4.从题目推导出解题的函数,方法能力不强转载 2020-06-05 11:39:39 · 204 阅读 · 0 评论 -
Python实现水仙花数代码
n=int(input()) for a in range(10**(n-1),10**n): if a==sum([int(i)**n for i in str(a)]): print(a)原创 2020-06-05 10:18:37 · 1829 阅读 · 0 评论