- 博客(49)
- 收藏
- 关注
原创 实验 2:turtle 库绘制进阶图形(2学时)
知识点:turtle 库坐标控制、循环结构、函数封装(教材 2.3-2.4)2. 设计函数绘制自定义正多边形(边数与颜色参数化)1. 绘制嵌套彩色五角星(大小逐层递减)3. 扩展:实现动态旋转花瓣图案。
2025-04-18 09:52:01
164
原创 实验 1 温度转换与输入输出强化(2 学时)
知识点:input()/print()、分支语句、字符串处理(教材 2.1-2.2)2. 扩展功能:输入错误处理(如非数字输入提示重新输入)1. 实现摄氏温度与华氏温度互转(保留两位小数)3. 扩展:支持开尔文温度的三向转换。
2025-04-18 08:58:04
56
原创 Python字符田字格绘制
编写程序,用字符方式打印输出一个简单的田字格,输出效果如图5.16所示。要求采用函数式编程,以田字格宽度为参数,能够根据参数绘制任意大小的田字格。
2025-04-02 19:08:55
185
原创 Python中 if __name__ == “__main__“: 的含义,为什么需要写这个语句?
Python 在导入模块时会执行模块中的(即不在函数、类或块中的代码),这是由 Python 的模块加载机制决定的。这种设计既有历史原因,也有实际用途,但同时也需要开发者注意避免副作用。Python 的模块(.py文件)本身就是一个可执行的脚本。当导入模块时,Python 解释器会:查找并加载模块文件。(包括函数/类定义、变量赋值、print()等顶层语句)。将执行结果(如定义的函数、变量)存储到模块的命名空间中。。通过判断__name__,将隔离:print("这段代码只在直接运行时执行")
2025-03-27 11:04:40
223
原创 蓝桥杯——飞机降落
其中第 i 架飞机在 Ti 时刻到达机场上空,到达时它的剩余油料还可以继续盘旋 Di 个单位时间,即它最早可以于 Ti 时刻开始降落,最晚可以于 Ti+Di 时刻开始降落。对于第一组数据,可以安排第 3 架飞机于 0 时刻开始降落,20 时刻完成降落。安排第 2 架飞机于 20 时刻开始降落,30 时刻完成降落。一架飞机降落完毕时,另一架飞机可以立即在同一时刻开始降落,但是不能在前一架飞机完成降落前开始降落。对于 100% 的数据,1≤T≤10,1≤N≤10,0≤Ti,Di,Li≤105。
2024-12-28 16:46:12
223
原创 蓝桥杯——破损的楼梯
小蓝来到了一座高耸的楼梯前,楼梯共有 N 级台阶,从第 0 级台阶出发。但是,楼梯上的第 a1 级、第 a2 级、第 a3 级,以此类推,共 M 级台阶的台阶面已经坏了,不能踩上去。现在,小蓝想要到达楼梯的顶端,也就是第 N 级台阶,但他不能踩到坏了的台阶上。,aM(1≤a1<a2<a3<aM≤N),表示坏掉的台阶的编号。第一行包含两个正整数 N(1≤N≤105)和 M(0≤M≤N),表示楼梯的总级数和坏了的台阶数。输出一个整数,表示小蓝到达楼梯顶端的方案数,对 109+7 取模。
2024-12-28 16:39:09
191
原创 蓝桥杯——混境之地5
第 1 行输入三个正整数 n,m 和 k , n,m 表示混境之地的大小, k 表示使用一次喷气背包可以升高的高度。第 2 行输入四个正整数 A,B,C,D ,表示小蓝当前所在位置的坐标,以及混境之地出口的坐标。第 3 行至第 n+2 行,每行 m 个整数,表示混境之地不同位置的高度。对于所有测试样例, 1≤n,m≤1000 , 1≤k,hij≤106。小蓝想知道他能否逃离这个混境之地,如果可以逃离这里,输入。小蓝可以往上下左右四个方向行走,不消耗能量。小蓝有一天误入了一个混境之地。
2024-12-28 16:35:19
349
原创 蓝桥杯——混境之地2
从 (1,1) 到 (5,5) 的一条可行道路为: (1,1)→(1,2)→(2,2)→(3,2)→(4,2)→(5,2)→(5,3)→ 打破 (5,4)→(5,5)。如图所示,绿色方块表示可以走的路,红色方块表示墙,蓝色圆圈小蓝当前所在的位置,橙色圆圈为传送门 2。第 2 行输入四个正整数 A,B,C,D ,表示小蓝当前所在位置的坐标,以及混境之地出口的坐标。如图所示,绿色方块表示可以走的路,红色方块表示墙,蓝色圆圈小蓝当前所在的位置,橙色圆圈为终点。对于所有测试样例, 1≤n,m≤1000。
2024-12-28 16:32:37
456
原创 蓝桥杯——黄金树
给定一棵 n 个点 n−1 条边的二叉树,编号为 1,2,…,n,其中 1 号点为根节点,其中第 i 个点的权重为 wi。请你计算出这棵树的为 0 的点的权重之和。
2024-12-28 16:25:24
166
原创 蓝桥杯——串变换
你可以挑选出任意个操作,以任意顺序执行,但是每个操作最多只能执行一次,如果可以将 S 串变为 T 串则输出。接下来 k 行,每行三个整数,其中第 i 行表示第 i 种操作的三个参数 opi,xi,yi。对于 100% 的数据,1≤n≤10,1≤k≤7,1≤opi≤2,0≤xi,yi<n。有两个长度为 n 的数字字符串 S,T ,下标从 0 开始。第一行输入一个正整数 n,表示字符串 S 和 T 的长度。第二行输入一个长度为 n 只由数字构成的字符串 S。第三行输入一个长度为 n 只由数字构成的字符串 T。
2024-12-28 16:22:07
251
原创 蓝桥杯——小怂爱水洼
假设小怂的起始点是 (1,1),他可以移动无数次,每次移动只能移动到当前水洼上下左右四个方向的相邻小水洼上,并且需要满足相邻小水洼水量大于 0,即如果新的小水洼水量为零,小怂就不能走到这个小水洼上。值得注意的是:每块上下左右相连且水量不为 0 的小水洼会合成一块大水洼,小怂每到一块新的大水洼,他之前收集到的水量会变为 0。第一个大水洼由 (1,1), (1,2), (2,1), (2,2) 四个小水洼组成,水量总和为 10。小怂喜欢收集水洼中的水,他每到一个水量不为零的小水洼中就会收集里面的所有水。
2024-12-28 16:19:35
304
原创 蓝桥杯——仙境诅咒
然而,有一天,仙境的主宰者妮妮(第一位修仙者)受到了诅咒,该诅咒会向距离妮妮不超过 D 的范围内的修仙者传播。接下来 N 行,每行两个实数 Xi 和 Yi(−103≤Xi,Yi≤103),表示第 i 位修仙者的坐标 (Xi,Yi)。在一片神秘的仙境中,有 N 位修仙者,他们各自在仙境中独立修炼,拥有自己独特的修炼之道和修炼之地,修仙者们彼此之间相互尊重、和谐相处。输出 N 行,每行一个整数,第 i 行的整数为 1 表示第 i 位修仙者最终被诅咒,为 0 则表示第 i 位修仙者没有被诅咒。
2024-12-28 16:16:46
304
原创 蓝桥杯——全球变暖
由于全球变暖导致了海面上升,科学家预测未来几十年,岛屿边缘一个像素的范围会被海水淹没。具体来说如果一块陆地像素与海洋相邻(上下左右四个相邻像素中有海洋),它就会被淹没。其中"上下左右"四个方向上连在一起的一片陆地组成一座岛屿。例如上图就有 2 座岛屿。照片保证第 1 行、第 1 列、第 N 行、第 N 列的像素都是海洋。请你计算:依照科学家的预测,照片中有多少岛屿会被完全淹没。第一行包含一个整数 N (1≤N≤1000)。以下 N 行 N 列代表一张海域照片。输出一个整数表示答案。
2024-12-28 16:14:29
239
原创 蓝桥杯——小朋友崇拜圈
在一个游戏中,需要小朋友坐一个圈,每个小朋友都有自己最崇拜的小朋友在他的右手边。班里 N 个小朋友,每个人都有自己最崇拜的一个小朋友(也可以是自己)。如下图所示,崇拜关系用箭头表示,红色表示不在圈中。要求输出一个整数,表示满足条件的最大圈的人数。输入第一行,一个整数 N(3<N<105)。显然,最大圈是[2 4 5 3] 构成的圈。接下来一行 N 个整数,由空格分开。小朋友编号为 1,2,3,⋯N。求满足条件的圈最大多少人?
2024-12-28 16:12:12
260
原创 蓝桥杯——N皇后问题
在 N×N 的方格棋盘放置了 N 个皇后,使得它们不相互攻击(即任意 2 个皇后不允许处在同一排,同一列,也不允许处在与棋盘边框成 45 角的斜线上。你的任务是,对于给定的 N,求出有多少种合法的放置方法。输入中有一个正整数 N≤10,表示棋盘和皇后的数量。为一个正整数,表示对应输入行的皇后的不同放置数量。
2024-12-28 16:08:55
183
原创 蓝桥杯——第k个数
给定一个整数 n ,请你在 1 到 n 中找出字典序排序后第 k 个数字。输入两个整数 n 和 k,(1≤n,k≤109)。输出一个整数,表示字典序排列后第 k 个数字。因此,第 3 个数字是 11。
2024-12-28 16:07:27
186
原创 蓝桥杯——分糖果
同学们的开心程度定义为他们所分到的糖果组成的字符串 s[i] 的字典序。肖恩希望同学们的开心程度相差尽量小,因此他要找到一种方案,使得所有糖果组成的字符串中字典序最大的字符串尽可能小。请输出能够实现字典序最小可能的 max(s[1],s[2],s[3],...,s[x])。第二行输入一个长度为 n 的字符串 S , S[i] 表示第 i 个糖果的种类。输出一个字符串,为所有糖果组成的字符串中字典序最大的字符串最小的可能值。数据保证 1≤n≤106,1≤x≤n,S[i]∈[′a′,′z′]。
2024-12-28 16:04:57
233
原创 蓝桥杯——异或森林
在一个神秘的世界中,存在着一个称为"异或森林"的地方。异或森林中的每个树木都拥有独特的力量。肖恩进入了这片森林,他得到了一个任务:找出数组中满足条件的连续子数组,使得连续子数组中所有元素异或运算结果的因数个数为偶数。完成任务将揭示宝藏的所在地。现在,你能告诉肖恩有多少个连续子数组满足条件吗?第二行输入 n 个数字,第 i 个数字 a[i] 表示数组的第 i 个元素。数据保证 1≤n≤104,1≤a[i]≤n。输出一个数字表示满足条件的连续子数组的数量。第一行输入一个数字 n 表示数组元素个数。
2024-12-27 18:10:40
257
原创 蓝桥杯——小蓝学位运算
输出一个正整数,表示 ∏i=1n∏j=inxori,j 对 1e9+7 取模的值。小蓝最近在学习位运算,由于他的数学不好,于是他去请教小桥,希望能得到小桥的指点。对于 100% 的评测数据,1≤n≤106,1≤ai<8192。第二行 n 个正整数 a1,a2,a3,...,an。第一行一个正整数 n。
2024-12-27 18:08:07
255
原创 蓝桥杯——简单的异或难题
异或运算的特殊之处在于,进行异或运算的两个数 a 和 b ,对于它们在二进制下的同一位,只有两边数不相同,运算的结果才为 1 ,如果相同,则为 0 ,比如 1 和 3 进行运算,它们转化成二进制后,分别是 01 和 11 ,那么它们的异或运算结果就是 10 ,转化成十进制数后就是 2。蓝桥美给了蓝桥A梦 n 个正整数 ai ,然后进行 m 次询问,每次询问第 l 个数到第 r 个数之间,所有出现次数为奇数的数的异或和是多少。第三次询问 [5,6] ,有 0 个出现次数为奇数的数,异或和为 0。
2024-12-27 18:03:13
525
原创 蓝桥杯——最小的或运算
给定整数 a,b,求最小的整数 x,满足 a∣x=b∣x,其中 ∣ 表示或运算。输出共 1 行,包含 1 个整数,表示最终答案。对于所有测评数据,0≤a,b<264。第一行包含 2 个正整数 a,b。
2024-12-27 18:00:00
235
原创 蓝桥杯——小蓝的决议
议会中共有 N 名成员,其中 X 名成员赞成这项决议,其余的成员则反对。接下来的每一行代表一个测试用例,每行包含两个用空格分隔的整数 N 和 X,分别表示议会中的成员总数和赞成决议的成员数。否则,请输出 "NO"。测试用例 2: 由于赞成决议的成员少于半数,因此决议未通过,输出 "NO"。测试用例 3: 由于超过半数的成员赞成决议,因此决议通过,输出 "YES"。测试用例 1: 由于半数成员赞成决议,因此决议通过,输出 "YES"。测试用例 4: 由于所有成员都反对决议,决议未通过,输出 "NO"。
2024-12-27 17:58:10
187
原创 蓝桥杯——如今仍是遥远的理想之城1
现在为了测试传送阵的连通性,梅林将芙芙丢进了 1 号传送阵进行 k 次传送。问你,在传送结束后,芙芙此时在第几个传送阵。魔法师梅林在卡美洛召唤了 N 个传送阵(编号 1∼N),每个传送阵都能传送到另一个编号为 ai 的传送阵。"吾立于灾厄之上,那是治愈所有伤痕,消散一切怨恨的,我们的故乡—— Lord Camelot"。第二行输入 N 个数字,表示第 i 个传送阵可以传送至 ai 位置。第一行输入 2 个正整数 N,k,表示传送阵的数量以及传送次数。样例含义为:1→2→3→2→3。
2024-12-27 17:54:59
390
1
原创 蓝桥杯——可凑成的最大花束数
情人节到了,妮妮学姐的追求者实在太多了,她一共有 n 个追求者,第 i 个追求者赠送了 ai 朵颜色相同的花朵。为了卖掉这些花并将所得款项捐赠给希望小学,妮妮学姐决定将 k 朵颜色不同的花朵打包成一个花束。我们有 5 朵某种颜色的花和 6 朵另一种颜色的花。我们可以通过每个花束中取两个不同颜色的花朵来打包 5 个花束。数据范围保证:1≤n,k≤2×1051≤n,k≤2×105,1≤ai≤1091≤ai≤109。第一行输入两个整数 n 和 k,分别表示妮妮学姐的追求者数量和打包需要的花朵数。
2024-12-27 17:47:02
252
原创 蓝桥杯——神奇的数组
换句话说,在数组 a 中存在多少对下标 l 和 r(1≤l≤r≤n) 满足:al⊕al+1⊕...⊕ar=al+al+1+...+ar。对于样例,满足条件的下标有 (1,1),(1,2),(2,2),(3,3),(3,4),(4,4),(5,5),总共 7 对。当然对于某些神奇的数组来说值可能是一样的,给定一个长度为 n 的数组 a ,请问有多少个子数组是神奇数组。欢迎来到异或王国,这是一个特殊的王国,对于一个数组它的价值并非所有数相加,而是所有数异或得到的值。第二行输入 n 个整数,表示数组 a 的值。
2024-12-27 17:44:38
365
原创 蓝桥杯——冒险者公会
接下来 n 行,每行代表一个村庄,每行第一个整数 k 表示该村庄的委托数量,此后 k 个不大于 103 的正整数表示该村庄的每个委托任务的难度值,0
2024-12-27 17:42:45
447
原创 PTA 7-2 0/1背包问题(回溯法) 作者 王东 单位 贵州师范学院
0/1背包问题。给定一载重量为W的背包及n个重量为wi、价值为vi的物体,1≤i≤n,要求重量和恰好为W具有最大的价值。
2024-12-26 14:23:49
518
原创 PTA 7-1 666 作者 DS课程组 单位 临沂大学
/ 使用 Map 替代 四维 int 数组,避免超内存// 生成 Map 键cnt++;return;i < 4;yy = newY;if (!} else {// 恢复现场i < m;j++) {if (grid[i][j] >= 6) { // 只有当前格子的值大于等于6时,才开始计算xx = i;yy = j;
2024-12-26 13:43:21
525
原创 蓝桥杯——聪明的小羊肖恩
题目要找下标对之和在L~R之间的的情况,那就先找出小于L的情况,再找出小于等于R的情况,最后答案就是小于等于R的情况 - 小于L的情况。
2024-01-31 14:51:28
632
4
原创 蓝桥杯——最大通过数
而本题求最大通过数时,不可以简单的用贪心直接比较两个数组中当前下标谁更小,否则会出现反例,比如a:1 888 888 888,b: 999 1 1 1,如果简单的贪心,那这个例子就会一直在a数组中选择关卡,但是实际上选b数组会更好。所以无法通过当前关卡的大小来判断究竟是选择a数组还是b数组,就像之前。题目给出的能量,那就增加假定的通过的关卡数量,直到找出最大的通过关卡数量。因为通过的关卡数量与消耗的能量成正相关,所以使用。,找到在当前给出的通过关卡数量的前提下,需要的最小能量。
2024-01-31 14:38:18
547
原创 蓝桥杯——妮妮的月饼工厂
设答案,也就是月饼高度为x。(实际main函数中没有x,但是l与r这个区间就代表了答案x的范围,我们将要对这个区间进行二分,寻找正确答案)当check的月饼个数小于k,代表高度x选大了,那么就让r = mid;当check的月饼个数大于k,代表高度x选小了,那么就让l = mid。然后check(x)偏大时,就让x变小,也就是r = mid;check(x)偏小时,就让x变大,也就是l = mid。若check的月饼个数等于k,令l = mid,输出l的值就行。,给我们一个k,这个k与x。
2024-01-29 15:39:11
590
原创 蓝桥杯——最大数组和
那要是删除前面两个最小的数1次,就一定会删除后面最大的数k - 1次。k每次减1,p每次加2,反复循环寻找最大值,直到所有情况遍历结束。,虽然这题求一个区间的元素和,感觉很像要用前缀和的样子,但是这题用前缀和该怎么写?既然很难保证究竟是先删去前面两个最小的数好,还是先删去最后面最大的数好,那就挨个把所有的可能性遍历一遍!总结:以后看到求一段数组区间的和的问题,不管一开始有没有思路,都要想到可能会用到。虽然可能一开始不知道怎么用,但是在没有具体思路,或者有思路但是不可行时,一定要试试用。
2024-01-25 11:39:53
542
3
原创 蓝桥杯——鸡哥的购物挑战
3、 -2、-1 、1、2、3的临界情况就是在i = 3的时候。(数组下标从1取起)先对数组进行从小到大的排序,然后从后向前一个一个累加。碰到临界情况时,由此时。-1、0、1、2、3的临界情况就是在i = 3的时候,比如:1、2、3、4、5、6的临界情况就是在i = 1的时候,只要细心一点,把所有的情况想到就行。先找价值为正的商品,就是一种常见的贪心策略。,来决定下一步的操作。
2024-01-25 10:53:41
382
原创 蓝桥杯——小蓝的礼物
对数组a进行从大到小的排序,之后就从小到大求和。若加上的费用使总和大于了k,就对最后加上来的费用除以2,进行。细节:因为用到除法,类型用double,double也占8Byte。若总和仍然大于k,就舍弃这个礼物。因为要礼物数量最多,所以。
2024-01-24 13:30:49
603
1
原创 蓝桥杯——无尽的石头
只要按照题目意思一个一个找石头就行,没有技巧,就是暴力套三层while循环的事。只要注意细节,记得去更改下一个石头的值,确保每次都没有多加少加之类的就行。没啥算法技巧,要说有的话最多就是。
2024-01-23 16:21:34
502
3
原创 蓝桥杯——珠宝的最大交替和
会出现根本就不需要改动的情况,也就是奇数位上所有的值都大于偶数位,要是交换了就亏了,所以无需更改。那只要判断所有奇数位上最小的值都大于偶数位上最大的值即可。根据题目加减计算的特性,只要将原先的总和加上交换的两个数的差值的2倍,就是交换后的最大和。所以这里根本不需要开一个数组,用一个循环就可以解决。仔细观察题目样例数据,就会发现虽然他说交换第二个和第三个数,但实际上交换第五个和第六个也是可以的,重点不在数字的顺序,而在大小。发现贪心的题目都是讲的花里胡哨的,还会故意迷惑人,实际上没有题目形容的那么复杂。
2024-01-23 15:28:41
817
1
原创 蓝桥杯——最小化战斗力差距
题目最后只要求输出最小战斗力差距,只要这一个值!这意味根本不需要知道哪个人在哪个队伍,或者这是哪个人和哪个人和哪个人的差值。发现其中差最小的是0,也就是1000与1000的差。将自左边的1000分为一队,右边剩下是一队,这就满足了题目的要求。题目要求的关键就是把一个排好序的序列按差值最小的部位进行左右分割罢了。这题题目读着一开始感觉挺复杂的,感觉写起来挺麻烦的,但这都是这个题目的障眼法。分成两个队伍,只要其中一个的最大值和另一个的最小值的差值最小就满足题目要求。所以最后输出最小差值即可。
2024-01-23 12:43:41
636
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人