编程思维
Mavis code
这个作者很懒,什么都没留下…
展开
-
数据结构-图-学习笔记2
今天的问题是由老师提出的问题引发的一系列思考,还有和我的是有交流得到的。数据结构在学图的这一章时,并没有向执勤啊那样使用模板类。但是直观的理解是节点只有编号,而边就是存储权重。所以并不需要像之前那样需要使用模板类。事实上,和我的是有激烈讨论还有自己深入思考之后,我发现了里面还有很多精华。树就是一种图,线性表->树->图,抽象程度一次递增,线性表示退化了的树,等等。那为什么树的节点...原创 2018-11-21 16:54:04 · 155 阅读 · 0 评论 -
Think myself - 无后效性(贪心+DP)
最近做了一些题,让我对之前我的思维方式产生很大的质疑。我也通过这些问题,思考我之前的思维方式,做出自己的反思,提出新的思维方式。先通过一道题引入。简单解决问题固然简单,关键是我们要发现背后的通性,思想的奥秘。题目传送门题意:一个工厂生产一个物品,每天的生产成不尽相同,要求的产量也不尽相同。后面的产品可以在之前的时间生产,但是每天的存储费用固定为S。要你求最小的成本。思路:贪心记录最小...原创 2018-11-30 17:01:28 · 875 阅读 · 0 评论 -
CodeForces541div2-B-Draw!(有详细推导)
题目传送门题意:题目转化为同一个选手的相邻比分构成一个闭区间(最开始的0 0也算),求这些区间的交集大小(不能重复计算,端点值注意不要计算)。思路:设a1 b1 a2 b2分别是上一次和当前的比分,我们计算区间[a1,a2],[b1,b2]的交集的时候,一般是min(a2,b2) - max(a1,b1) + 1(如果前者小于后者则continue).这样计算的话,我们将两个区间的所有点...原创 2019-02-24 11:11:13 · 318 阅读 · 0 评论 -
To the Max-POJ1050-二维区间前缀和
题意:给你一个方阵,求其子矩阵和的最大值。思路:如果朴素枚举的话,复杂度O(n4),如果使用前缀和,可以降一维,所以O(n3);。枚举就是枚举当前行i,然后枚举后面的行j(j>=i),然后再枚举列k(1,n).但是可能会有问题,因为这样枚举,中间的子矩阵看似没有枚举到。按照这样的枚举方式,如果最大子矩阵在中间,那么前面的列的元素和肯定<0,所以我们将前面<0的部分删去,就...原创 2019-03-09 20:51:42 · 194 阅读 · 0 评论 -
CF66-DIV2-D. Array Splitting-思维题
题目传送门思维题。思维方法:本题的思维启示:首先,他是连续区间,意味着区间每个数的位置不能改变。所以首先想到贪心从开始选取,但是如果从1-n开始贪心,贪心前面的不知道会对后面造成什么影响,还有k这个约束。之前的思维是既然无法对每个数直接通过改变他们顺序贪心,那么久从1-n开始贪心,一步一步划分,将划分出来的新部分*他的权重。 总的来说就是,先确定分法,然后再计算权重。这是比较直观的...原创 2019-06-06 15:48:47 · 420 阅读 · 0 评论