随笔 - 38  文章 - 0  评论 - 5  阅读 - 23267

我与CSP的一点小事

今天是20220311 见了YG老师,感觉被打了鸡血。然后想当初研一的时候,有了这篇LeetCode习题集

现在突然有了一点刺激之后,决定记录下这次的CSP经历,说无论怎么样是the shit,这次就要好好准备吧

1.前缀和  后缀和 线段树 区间树 第四题图的搜索算法 动态规划  并查集  二分搜索代码

2.熟悉环境 一定要找好一些基本算法的代码 然后考场上看题目 想一想可能要用什么算法,直接套代码

3.建议用python  六月份见 "Go the Hell" 

4.字符串模拟重点看一下 正则表达式

4.拿看小说的时间学算法  老师给的鸡血激励我迈出第一步,有了第一步我相信自己可以做得好 

6.老师给的刺激,果真有效 我满血复活了 我还是需要一点刺激才能前进,抽一鞭子就可以做到(果真贱) 

7.以后要是有什么存在动力的地方(尽管很是尴尬),我觉得还是有必要去一下,比如幼儿园、找mentor说说话,问一问问题 等等 这些地方得到的体会说出来别人都不相信其重要性,别人永远体会不了,但细节决定了你的成败,只有自己经历了才能体会 

8.万般滋味,都是生活呀

以下是记录学习的过程

前缀和

724. 寻找数组的中心下标 话说,前缀和最重要的是不是 (连续)和?扩展到差分的话,就是(连续)差?要是给某个区间都加上某个数字or减去某个数值的话,感觉是前缀和非常容易操作,但是操作起来不还是需要迭代,这样的计算方法是不是没那么简单了?

复制代码
 1 class Solution:
 2     def pivotIndex(self, nums: List[int]) -> int:
 3         s = [0]
 4         for i in range(len(nums)):
 5             s.append(s[i]+nums[i])
 6         print(s)
 7 
 8         flag = 0
 9         for i in range(1,len(s)):             # 遍历s
10             if s[i-1] == s[-1] - s[i]:
11                 flag = 1
12                 return i-1                    # 因为s增加了第一0,所以遍历s,i要减1
13         
14         if flag == 0:
15             return -1
复制代码

1413. 逐步求和得到正数的最小值  累计和=连续和=前缀和

复制代码
 1 class Solution:
 2     def minStartValue(self, nums: List[int]) -> int:
 3         # 累加和就是连续和,所以可以考虑用前缀和(一位),顺便可以联想到差分
 4         s = [nums[0]]
 5         for i in range(1,len(nums)):
 6             s.append(s[-1]+nums[i])
 7         print(s)
 8         
 9         if min(s) <= 0:
10             return -(min(s)) + 1
11         else:
12             return 1
复制代码

 

posted on   小粥超人_小hi_Hygge  阅读(21)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示