自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 收藏
  • 关注

原创 [蓝桥杯] 美丽的2 python一行解法

小蓝特别喜欢 2,今年是公元 2020 年,他特别高兴。他很好奇,在公元 1 年到公元 2020 年(包含)中,有多少个年份的数位中包含数字 2?结果:563解法:用列表生成式生成符合题目要求的列表再量一下长度即可。print(len([i for i in range(1,2021) if '2' in str(i)]))...

2021-01-31 23:15:41 258

原创 leetcode 839. 相似字符串组 python解法

如果交换字符串 X 中的两个不同位置的字母,使得它和字符串 Y 相等,那么称 X 和 Y 两个字符串相似。如果这两个字符串本身是相等的,那它们也是相似的。例如,“tars” 和 “rats” 是相似的 (交换 0 与 2 的位置); “rats” 和 “arts” 也是相似的,但是 “star” 不与 “tars”,“rats”,或 “arts” 相似。总之,它们通过相似性形成了两个关联组:{“tars”, “rats”, “arts”} 和 {“star”}。注意,“tars” 和 “arts” 是在

2021-01-31 23:08:28 144

原创 leetcode 1631. 最小体力消耗路径 python 并查集

你准备参加一场远足活动。给你一个二维 rows x columns 的地图 heights ,其中 heights[row][col] 表示格子 (row, col) 的高度。一开始你在最左上角的格子 (0, 0) ,且你希望去最右下角的格子 (rows-1, columns-1) (注意下标从 0 开始编号)。你每次可以往 上,下,左,右 四个方向之一移动,你想要找到耗费 体力 最小的一条路径。一条路径耗费的 体力值 是路径上相邻格子之间 高度差绝对值 的 最大值 决定的。请你返回从左上角走到右下角的

2021-01-29 21:40:33 147

原创 [蓝桥杯] 猜字母 python解法

把abcd...s共19个字母组成的序列重复拼接106次,得到长度为2014的串。接下来删除第1个字母(即开头的字母a),以及第3个,第5个等所有奇数位置的字母。得到的新串再进行删除奇数位置字母的动作。如此下去,最后只剩下一个字母,请写出该字母。解法:用切片从第一个开始隔一个取一个即可。结果:qs = 'abcdefghijklmnopqrs' * 106while len(s) != 1: s = s[1::2]print(s)...

2021-01-28 21:05:37 239

原创 leetcode 724. 寻找数组的中心索引 python解法

给你一个整数数组 nums,请编写一个能够返回数组 “中心索引” 的方法。数组 中心索引 是数组的一个索引,其左侧所有元素相加的和等于右侧所有元素相加的和。如果数组不存在中心索引,返回 -1 。如果数组有多个中心索引,应该返回最靠近左边的那一个。注意:中心索引可能出现在数组的两端。解法:判断 左边 和 总的-左边-当前数 是否相等即可。class Solution: def pivotIndex(self, nums: List[int]) -> int: sum_l

2021-01-28 20:44:25 87

原创 leetcode 1579. 保证图可完全遍历 python 并查集

Alice 和 Bob 共有一个无向图,其中包含 n 个节点和 3 种类型的边:类型 1:只能由 Alice 遍历。类型 2:只能由 Bob 遍历。类型 3:Alice 和 Bob 都可以遍历。给你一个数组 edges ,其中 edges[i] = [typei, ui, vi] 表示节点 ui 和 vi 之间存在类型为 typei 的双向边。请你在保证图仍能够被 Alice和 Bob 完全遍历的前提下,找出可以删除的最大边数。如果从任何节点开始,Alice 和 Bob 都可以到达所有其他节点,则

2021-01-27 16:16:49 141

原创 [蓝桥杯] 李白打酒 python解法

标题:李白打酒话说大诗人李白,一生好饮。幸好他从不开车。一天,他提着酒壶,从家里出来,酒壶中有酒2斗。他边走边唱:无事街上走,提壶去打酒。逢店加一倍,遇花喝一斗。这一路上,他一共遇到店5次,遇到花10次,已知最后一次遇到的是花,他正好把酒喝光了。 请你计算李白遇到店和花的次序,可以把遇店记为a,遇花记为b。则:babaabbabbabbbb 就是合理的次序。像这样的答案一共有多少呢?请你计算出所有可能方案的个数(包含题目给出的)。结果:14num = 0def count

2021-01-26 21:57:03 1517

原创 leetcode 1128. 等价多米诺骨牌对的数量

给你一个由一些多米诺骨牌组成的列表 dominoes。如果其中某一张多米诺骨牌可以通过旋转 0 度或 180 度得到另一张多米诺骨牌,我们就认为这两张牌是等价的。形式上,dominoes[i] = [a, b] 和 dominoes[j] = [c, d] 等价的前提是 a=c 且 b=d,或是 a=d 且 b=c。在 0 <= i < j < dominoes.length 的前提下,找出满足 dominoes[i] 和 dominoes[j] 等价的骨牌对 (i, j) 的数量。

2021-01-26 21:49:24 52

原创 [蓝桥杯] 神奇算式 python解法

由4个不同的数字,组成的一个乘法算式,它们的乘积仍然由这4个数字组成。比如: 210 x 6 = 1260 8 x 473 = 378427 x 81 = 2187 都符合要求。如果满足乘法交换律的算式算作同一种情况,那么,包含上边已列出的3种情况,一共有多少种满足要求的算式。结果:12因为2位数乘2位数会出现满足乘法交换律的算式,所以要除以2con_13 = 0con_22 = 0for i in range(2, 10): for j in range(1,

2021-01-25 22:02:51 203

原创 leetcode 959. 由斜杠划分区域 python解法 使用并查集 详解

在由 1 x 1 方格组成的 N x N 网格 grid 中,每个 1 x 1 方块由 /、\ 或空格构成。这些字符会将方块划分为一些共边的区域。(请注意,反斜杠字符是转义的,因此 \ 用 “\” 表示。)。返回区域的数目。解法:将每个小方格分为四个三角形,并进行编号:分为三种情况:为 ’ ’ 时,小方格中的四个三角形都需要连接为 ‘\’ 时,需要连接小方格中的0、1和2、3为 ‘/’ 时,需要连接小方格中的0、3和1、2除此之外,还需要对相邻的小方格进行连接,为了减少运算量,这里

2021-01-25 21:12:40 223 1

原创 解决esp32连接电脑时可以正常使用,但连接电源时却没有反应的问题

使用的是一个刷入了micropython的esp32开发板,在连接电脑使用Thonny软件操控的时候一切正常,但在只连接电源或者不使用Thonny的时候却什么反应也没有。用sscom查看串口返回的数据时发现仅返回了一段文字:rst:0x1 (POWERON_RESET),boot:0x3 (DOWNLOAD_BOOT(UART0/UART1/SDIO_REI_REO_V2))waiting for download查资料后发现此时开发板处于 DOWNLOAD_BOOT 模式,因为IO0口被拉到了低

2021-01-23 22:48:21 8116 6

原创 [蓝桥杯] 调和级数 python解法

1/1 + 1/2 + 1/3 + 1/4 + … 在数学上称为调和级数。它是发散的,也就是说,只要加上足够多的项,就可以得到任意大的数字。但是,它发散的很慢:前1项和达到 1.0前4项和才超过 2.0前83项的和才超过 5.0那么,请你计算一下,要加多少项,才能使得和达到或超过 15.0 呢?结果:1835421n = 0num = 0while num <= 15: n += 1 num += 1 / n print(n)```...

2021-01-23 22:10:17 464

原创 leetcode 1319. 连通网络的操作次数 python 并查集

用以太网线缆将 n 台计算机连接成一个网络,计算机的编号从 0 到 n-1。线缆用 connections 表示,其中 connections[i] = [a, b] 连接了计算机 a 和 b。网络中的任何一台计算机都可以通过网络直接或者间接访问同一个网络中其他任意一台计算机。给你这个计算机网络的初始布线 connections,你可以拔开任意两台直连计算机之间的线缆,并用它连接一对未直连的计算机。请你计算并返回使所有计算机都连通所需的最少操作次数。如果不可能,则返回 -1 。解法:使用并查集来统计计

2021-01-23 22:03:25 179 3

原创 leetcode 989. 数组形式的整数加法

对于非负整数 X 而言,X 的数组形式是每位数字按从左到右的顺序形成的数组。例如,如果 X = 1231,那么其数组形式为 [1,2,3,1]。给定非负整数 X 的数组形式 A,返回整数 X+K 的数组形式。class Solution: def addToArrayForm(self, A: List[int], K: int) -> List[int]: s = '' for i in A: s += str(i)

2021-01-22 21:00:30 64

原创 [蓝桥杯] 圆周率 python解法

历史上有许多计算圆周率pai的公式,其中,格雷戈里和莱布尼茨发现了下面的公式:pai = 4*(1-1/3+1/5-1/7 …)参见【图1.png】这个公式简单而优美,但美中不足,它收敛的太慢了。如果我们四舍五入保留它的两位小数,那么:累积1项是:4.00累积2项是:2.67累积3项是:3.47。。。请你写出它累积100项是多少(四舍五入到小数后两位)。注意:只填写该小数本身,不要填写任何多余的说明或解释文字。结果:3.13pi = 0for i in range(1, 101)

2021-01-22 20:52:29 297

原创 [蓝桥杯] 武功秘籍 python解法

标题:武功秘籍小明到X山洞探险,捡到一本有破损的武功秘籍(2000多页!当然是伪造的)。他注意到:书的第10页和第11页在同一张纸上,但第11页和第12页不在同一张纸上。小明只想练习该书的第81页到第92页的武功,又不想带着整本书。请问他至少要撕下多少张纸带走?因为是从奇数页开始的,无论有多少页都是除以二再加上一页9 1011 12 4//2=29 1011 1213 5//2=2lis = list(range(81, 93))lenth = len(lis)num = lenth

2021-01-20 17:46:50 131

原创 leetcode 628. 三个数的最大乘积 python解法

乘积最大有两种可能:第一种是三个最大的数的乘积,第二种是两个最"大"的负数乘最大的正数,所以先排序然后取上述两种乘积最大一个即可。class Solution: def maximumProduct(self, nums: List[int]) -> int: nums.sort() return max(nums[-1] * nums[-2] * nums[-3], nums[0] * nums[1] * nums[-1])

2021-01-20 17:46:13 469 1

原创 [蓝桥杯] 啤酒和饮料 python解法

啤酒每罐2.3元,饮料每罐1.9元。小明买了若干啤酒和饮料,一共花了82.3元。我们还知道他买的啤酒比饮料的数量少,请你计算他买了几罐啤酒。注意:答案是一个整数。结果:11for i in range(1, 100): for j in range(i + 1, 100): #饮料 if i * 2.3+ j * 1.9 == 82.3: print(i) ...

2021-01-19 13:51:30 263

原创 [蓝桥杯] 猜年龄 python解法

小明带两个妹妹参加元宵灯会。别人问她们多大了,她们调皮地说:“我们俩的年龄之积是年龄之和的6倍”。小明又补充说:“她们可不是双胞胎,年龄差肯定也不超过8岁啊。”请你写出:小明的较小的妹妹的年龄。结果: 10for i in range(1, 100): for j in range(i + 1, 100): #大的 if j - i <= 8 and i * j == (i + j) * 6: print(i)...

2021-01-18 14:11:24 181

原创 [蓝桥杯] 幻方填空 python解法

幻方是把一些数字填写在方阵中,使得行、列、两条对角线的数字之和都相等。欧洲最著名的幻方是德国数学家、画家迪勒创作的版画《忧郁》中给出的一个4阶幻方。他把1,2,3,...16 这16个数字填写在4 x 4的方格中。如图p1.jpg所示,即:16 ? ? 13? ? 11 ?9 ? ? *? 15 ? 1表中有些数字已经显露出来,还有些用?和*代替。请你计算出? 和 * 所代表的数字。并把 * 所代表的数字作为本题答案提交。结果:12from itert

2021-01-17 19:08:04 279

原创 [蓝桥杯] 颠倒的价牌 python解法

小李的店里专卖其它店中下架的样品电视机,可称为:样品电视专卖店。其标价都是4位数字(即千元不等)。小李为了标价清晰、方便,使用了预制的类似数码管的标价签,只要用颜色笔涂数字就可以了(参见p1.jpg)。这种价牌有个特点,对一些数字,倒过来看也是合理的数字。如:1 2 5 6 8 9 0 都可以。这样一来,如果牌子挂倒了,有可能完全变成了另一个价格,比如:1958 倒着挂就是:8561,差了几千元啊!! 当然,多数情况不能倒读,比如,1110 就不能倒过来,因为0不能作为开始数字。有一天,

2021-01-16 21:06:53 114

原创 [蓝桥杯] 梅森素数 python解法

如果一个数字的所有真因子之和等于自身,则称它为“完全数”或“完美数”例如:6 = 1 + 2 + 328 = 1 + 2 + 4 + 7 + 14早在公元前300多年,欧几里得就给出了判定完全数的定理:若 2^n - 1 是素数,则 2^(n-1) * (2^n - 1) 是完全数。其中 ^ 表示“乘方”运算,乘方的优先级比四则运算高,例如:2^3 = 8, 2 * 2^3 = 16, 2^3-1 = 7但人们很快发现,当n很大时,判定一个大数是否为素数到今天也依然是个难题。因为

2021-01-15 16:58:50 355

原创 [蓝桥杯] 第39级台阶 python解法

小明刚刚看完电影《第39级台阶》,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级!站在台阶前,他突然又想着一个问题:如果我每一步只能迈上1个或2个台阶。先迈左脚,然后左右交替,最后一步是迈右脚,也就是说一共要走偶数步。那么,上完39级台阶,有多少种不同的上法呢?使用递归,寻找登上39个台阶且步数为偶数的情况def find(n, s): #n代表阶梯数,s代表步数 if n > 39: return 0 elif n == 39 and s %

2021-01-14 14:08:54 399

原创 [蓝桥杯] 素数 python解法

素数就是不能再进行等分的数。比如:2 3 5 7 11 等。9 = 3 * 3 说明它可以3等分,因而不是素数。我们国家在1949年建国。如果只给你 1 9 4 9 这4个数字卡片,可以随意摆放它们的先后顺序(但卡片不能倒着摆放啊,我们不是在脑筋急转弯!),那么,你能组成多少个4位的素数呢?比如:1949,4919 都符合要求。import mathdef is_prime(number): # 判断是否为素数 sqrt = int(math.sqrt(number))

2021-01-13 16:41:28 287

原创 [蓝桥杯] 振兴中华 python解法

标题: 振兴中华小明参加了学校的趣味运动会,其中的一个项目是:跳格子。地上画着一些格子,每个格子里写一个字,如下所示:(也可参见p1.jpg)从我做起振我做起振兴做起振兴中起振兴中华比赛时,先站在左上角的写着“从”字的格子里,可以横向或纵向跳到相邻的格子里,但不能跳到对角的格子或其它位置。一直要跳到“华”字结束。要求跳过的路线刚好构成“从我做起振兴中华”这句话。请你帮助小明算一算他一共有多少种可能的跳跃路线呢?def find(x, y): #最终都会走到边界

2021-01-12 19:55:37 248 1

原创 用树莓派制作刷脸打卡机——硬件部分

一.上手树莓派1.安装系统2.1.开启ssh与vnc2.二.安装所需库三.配置摄像头四.搭建完成了

2021-01-11 18:25:49 1013

原创 [蓝桥杯] 马虎的算式 python解法

标题: 马虎的算式小明是个急性子,上小学的时候经常把老师写在黑板上的题目抄错了。有一次,老师出的题目是:36 x 495 = ?他却给抄成了:396 x 45 = ?但结果却很戏剧性,他的答案竟然是对的!!因为 36 * 495 = 396 * 45 = 17820类似这样的巧合情况可能还有很多,比如:27 * 594 = 297 * 54假设 a b c d e 代表1~9不同的5个数字(注意是各不相同的数字,且不含0)能满足形如: ab * cde = adb * ce

2021-01-11 16:19:57 178 1

原创 [蓝桥杯] 排他平方数 python解法

题目标题: 排它平方数小明正看着 203879 这个数字发呆。原来,203879 * 203879 = 41566646641这有什么神奇呢?仔细观察,203879 是个6位数,并且它的每个数位上的数字都是不同的,并且它平方后的所有数位上都不出现组成它自身的数字。具有这样特点的6位数还有一个,请你找出它!再归纳一下筛选要求:1. 6位正整数2. 每个数位上的数字不同3. 其平方数的每个数位不含原数字的任何组成数位答案是一个6位的正整数。for i in range(9999

2021-01-09 20:58:58 159

原创 [蓝桥杯] 世纪末的星期 python解法

标题: 世纪末的星期曾有邪教称1999年12月31日是世界末日。当然该谣言已经不攻自破。还有人称今后的某个世纪末的12月31日,如果是星期一则会....有趣的是,任何一个世纪末的年份的12月31日都不可能是星期一!! 于是,“谣言制造商”又修改为星期日......1999年的12月31日是星期五,请问:未来哪一个离我们最近的一个世纪末年(即xx99年)的12月31日正好是星期天(即星期日)?请回答该年份(只写这个4位整数,不要写12月31等多余信息)import datetim

2021-01-08 20:29:30 101

原创 [蓝桥杯] 猜年龄 python解法

题目标题: 猜年龄美国数学家维纳(N.Wiener)智力早熟,11岁就上了大学。他曾在1935~1936年应邀来中国清华大学讲学。一次,他参加某个重要会议,年轻的脸孔引人注目。于是有人询问他的年龄,他回答说:“我年龄的立方是个4位数。我年龄的4次方是个6位数。这10个数字正好包含了从0到9这10个数字,每个都恰好出现1次。”请你推算一下,他当时到底有多年轻。for age in range(1, 100): age3 = str(age ** 3) age4 = str

2021-01-07 16:58:48 581

原创 [蓝桥杯] 高斯日记 python解法 使用datetime模块

使用datetime模块,将出生时间加上经过的时间即可。import datetime as dtbirthday_time = dt.date(1777,4,30-1) #要算上出生的那一天,所以要减去一天num = 8113new_time = birthday_time + dt.timedelta(days=num)print(new_time)...

2021-01-06 15:43:58 176 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除