- 博客(8)
- 收藏
- 关注
原创 leetcode 53 最大子序和
用pre来保存数字num前的那一段(并不是整个数组的)最大子数组和,如果把num加入子数组能使和更大,就把num加进去,如果不会更大,就用num开启一个新的子数组,用另一个参数res来保存整个数组的最大的子数组和class Solution(object): def maxSubArray(self, nums): res = nums[0] pre = 0 for num in nums: pre = max(...
2020-09-24 19:57:54 108
转载 leetcode 458 可怜的小猪
解题思路:有点类似于多维空间确定一个点的位置import mathclass Solution(object): def poorPigs(self, buckets, minutesToDie, minutesToTest): times = minutesToTest // minutesToDie base = times + 1 ans = int(math.ceil(math.log(buckets, base)))...
2020-09-22 09:18:31 140
原创 leetcode 39 组合总数(回溯+剪枝)
def combinationSum(self, candidates, target): res = [] n = len(candidates) candidates.sort() def back(ans, start, tmp): # 将”出口“放在递归函数的最开始 if ans == target: res.append(tmp) return True elif...
2020-09-20 13:47:28 99
原创 POJ 2234 博弈论 nim游戏
博弈论 nim游戏Nim取子游戏是由两个人面对若干堆硬币(或石子)进行的游戏。设有k>=1堆硬币,各堆分别含有枚硬币。游戏的目的就是选择最后剩下的硬币。游戏法则如下:1.两个游戏人交替进行游戏(游戏人I和游戏人II);2.当轮到每个游戏人取子时,选择这些堆中的一堆,并从所选的堆中取走至少一枚硬币(游戏人可以取走他所选堆中的全部硬币);3.当所有的堆都变成空堆时,最后取子的游戏人即为胜者。定义P-position和N-position,其中P代表Previous,N代表Next.
2020-08-08 21:10:59 254
原创 Linux新建磁盘分区、文件系统及挂载
1、在虚拟机下新建一个磁盘,我用的虚拟机是virtual box(1)点击设置,选择存储,点击SATA那一行右边那个新建硬盘(2)选择创建虚拟硬盘 (3)选择 虚拟硬盘的文件类型,点击下一步 (4)一般情况下是选择动态分配,如有特别需要,也可以选择固定大小,点击下一步 ...
2018-04-18 13:58:46 3843
原创 Ubuntu17修改root密码
1、Ubuntu开机的时候立马按ESC键(不是长按shift键,也不是按enter键)进入该界面,选中图中的选项按enter键 2、进入该页面后,选中图中的选项按e键(不是enter键) 3、将页面翻到底部,找到ro recovery nomodeset这串代码,将他们改...
2018-04-17 21:32:04 542
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人