- 博客(15)
- 收藏
- 关注
原创 【思特奇杯·云上蓝桥-算法集训营】第2周 第4题 穿越雷区
第4题 穿越雷区问题描述X星的坦克战车很奇怪,它必须交替地穿越正能量辐射区和负能量辐射区才能保持正常运转,否则将报废。某坦克需要从A区到B区去(A,B区本身是安全区,没有正能量或负能量特征),怎样走才能路径最短?已知的地图是一个方阵,上面用字母标出了A,B区,其它区都标了正号或负号分别表示正负能量辐射区。例如:坦克车只能水平或垂直方向上移动到相邻的区。数据格式要求:输入第一行是一个整数n,表示方阵的大小, 4<=n<100接下来是n行,每行有n个数据,可能是A,B,+,-中的
2022-01-16 17:31:06
179
1
原创 【思特奇杯·云上蓝桥-算法集训营】第2周 第3题 第 39 级台阶
第3题 第 39 级台阶题目描述:小明刚刚看完电影《第39级台阶》,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级!站在台阶前,他突然又想着一个问题:如果我每一步只能迈上1个或2个台阶。先迈左脚,然后左右交替,最后一步是迈右脚,也就是说一共要走偶数步。那么,上完39级台阶,有多少种不同的上法呢?输出格式:输出一个整数解题思路:记录走的步数,走到最后一级的时候判断是否为偶数步def count (n): if n==0 :#如果刚好走完39个阶梯那么结果+1
2022-01-16 17:21:52
246
原创 【思特奇杯·云上蓝桥-算法集训营】第2周 第2题 李白打酒
第二题 李白打酒问题描述话说大诗人李白,一生好饮。幸好他从不开车。一天,他提着酒壶,从家里出来,酒壶中有酒2斗。他边走边唱:无事街上走,提壶去打酒。逢店加一倍,遇花喝一斗。这一路上,他一共遇到店5次,遇到花10次,已知最后一次遇到的是花,他正好把酒喝光了。请你计算李白遇到店和花的次序,可以把遇店记为a,遇花记为b。则:babaabbabbabbbb 就是合理的次序。像这样的答案一共有多少呢?请你计算出所有可能方案的个数(包含题目给出的)。解题思路:遇到店,店的数量 - 1,同时酒的数量翻
2022-01-16 17:16:15
105
原创 【思特奇杯·云上蓝桥-算法集训营】第2周 第一题 带分数
第一题 带分数问题描述100 可以表示为带分数的形式:100 = 3 + 69258 / 714。还可以表示为:100 = 82 + 3546 / 197。注意特征:带分数中,数字1~9分别出现且只出现一次(不包含0)。类似这样的带分数,100 有 11 种表示法。输入格式从标准输入读入一个正整数N (N<1000*1000)输出格式程序输出该数字用数码1~9不重复不遗漏地组成带分数表示的全部种数。注意:不要求输出每个表示...
2022-01-16 17:01:52
160
原创 6.Z字形变换
7.20每日一题题目:思路:主要是行索引递增递减创建长度为numRows的空列表,每个元素依次储存z字形的每一行s中的每个字母的行索引先按1递增,直到numRows时按1递减,减到0时再次按1递增,如此反复每次取出的字母按照对应行索引拼接进去即可代码...
2021-07-25 17:49:52
69
原创 Leetcode-509斐波那契数
题目斐波那契数,通常用 F(n) 表示,形成的序列称为 斐波那契数列 。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是:给你 n ,请计算 F(n) 。示例注意0 <= n <= 30代码执行效果...
2021-01-05 12:51:02
141
原创 Leetcode-86分隔链表
题目给你一个链表和一个特定值 x ,请你对链表进行分隔,使得所有小于 x 的节点都出现在大于或等于 x 的节点之前。你应当保留两个分区中每个节点的初始相对位置。示例解题思路本题实质就是将链表分为:1.小于 x 部分的链表按照原始顺序 记为 a2.大于等于 x 部分的链表按照原始顺序 记为 b3.拼接两个链表,a–>b代码链表相关知识要多学一学...
2021-01-04 19:55:49
107
原创 Leetcode-239滑动窗口最大值
题目给你一个整数数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。返回滑动窗口中的最大值。示例一示例二示例三示例四示例五提示解题思路由于python内置的heapq的实现方式是小顶堆,我们插入heap的时候把值取负,这样可以保证堆顶元素表面存放的是最小值,其实存放的取负数是最大值,变相的用小顶堆实现大顶堆。优先队列,单调队列代码其他...
2021-01-04 19:28:56
124
原创 Python标准库模块之heapq
Python标准库模块之heapq该模块提供了堆排序算法的实现。堆是二叉树,最大堆中父节点大于或等于两个子节点,最小堆父节点小于或等于两个子节点。创建堆heapq有两种方式创建堆, 一种是使用一个空列表,然后使用heapq.heappush()函数把值加入堆中,另外一种就是使用heap.heapify(list)转换列表成为堆结构。heapq 模块还有一个heapq.merge(*iterables) 方法,用于合并多个排序后的序列成一个排序后的序列, 返回排序后的值的迭代器。类似于sorted
2021-01-04 17:06:44
243
原创 Leetcode—605种花问题
题目假设有一个很长的花坛,一部分地块种植了花,另一部分却没有。可是,花不能种植在相邻的地块上,它们会争夺水源,两者都会死去。给你一个整数数组 flowerbed 表示花坛,由若干 0 和 1 组成,其中 0 表示没种植花,1 表示种植了花。另有一个数 n ,能否在不打破种植规则的情况下种入 n 朵花?能则返回 true ,不能则返回 false。示例提示解题思路抛开问题找本质其实就是找到连着的三个0的个数,就是种多少花的个数。所以我们可以列表前后加0,判断是否有三个0连续即可解法一运
2021-01-03 00:25:38
220
原创 选课系统
题目要求如下:准备工作步骤1.定模型,多少个类2.定属性3.定关系4.画UML模型图5.写代码要求分析1.找出题目中的所有关键独立名词:学校(校区),学员,课程,讲师,管理员,班 级2.定属性...
2020-12-31 18:44:40
272
原创 Python内置函数汇总
和数字相关1.数据类型•bool:布尔型(true,false)•int:整型(整数)•float:浮点型(小数)•complex:复数2.进制转换•bin()将给的参数转换成二进制•oct()将给的参数转换成八进制•hex()将给的参数转换成十六进制3.数学运算•abs()返回绝对值•divmode()返回商和余数•round()四舍五入•sum()求和•pow(a,b)求a的b次幂,如果有三个参数,则求完次幂后对第三个数取余•min()求最小值•max()求最大值和数
2020-12-25 21:55:31
245
原创 Python enumerate()函数
•enumerate函数:函数原型:enumerate(sequence, [start=0])#第二个参数为指定索引功能:将可循环序列sequence以start开始分别 列出序列数据和数据下标即对一个可遍历的数据对象(如列表、元组或字 符串等等),enumerate会将该数据对象组合为一个索引序列,同时列出数据和数据下标,一般用于for循环之中•参数sequence – 一个序列、迭代器或其他支持迭代对象。start – 下标起始位置。•返回值返回enume
2020-12-23 23:17:07
188
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人