[题目链接][1] 题意简述 区间赋值模意义下等差数列,询问区间和 $N\leq 10^9,Q\leq 10^5$ Sol 每次操作就是把操作区间$[L,R]$中的数赋值成: $$(X L+1) A\ mod\ B$$ 考虑用线段树维护。 我们只需要能快速知道一段区间$[l,r]$被覆盖后的和就行了 ...
分类:
编程语言 时间:
2019-02-17 15:31:16
阅读次数:
204
0/1背包的问题模型如下: 给定N个物品,其中第i个物品的体积为Vi ,价值为Wi 。有一容积为M的背包,要选择一些物品放入背包,使物品体积不超过M的前提下,物品的价值总和最大。 dp[i][j]表示从前i个物品中选出了总体积为j的物品放入背包,物品的最大价值。即我们很容易得出解决的代码: 根据上面 ...
分类:
其他好文 时间:
2019-02-16 15:27:07
阅读次数:
151
两种创建生成器的方法: 将列表推导式的 [ ] 换成 ( ) 在函数里使用 yield 三种启动生成器的方法: next() send(参数) for循环 迭代器和生成器的区别: 迭代器可以减少资源耗用,实现循环 生成器是特殊的迭代器,可以通过yield暂停执行,也可以通过send启动方式传参改变执 ...
分类:
其他好文 时间:
2019-02-16 15:26:49
阅读次数:
180
第一性原理包含几个层面的含义: 1) 回归到本源、本质,独立思考。 2) 从本源、本质上进行推导,而不是用类比的方法进行判断。 我们推导常见的第一性原理: 美国立国之根本在于《独立宣言》的崇高追求:人人生而平等 政治结构,政府运作,经济体系和法律架构无不围绕着这个目标展开,参议院保障政府运行效率,众 ...
分类:
其他好文 时间:
2019-02-16 09:17:42
阅读次数:
250
我们经常需要这样处理一个列表:把一个列表里面的每个元素, 经过相同的处理 ,生成另一个列表。 比如:一个列表1,里面都是数字,我们需要生成一个新的列表B,依次存放列表A中每个元素的平方 怎么办? 当然可以用for循环处理,像这样 list1 = [1,2,3,4,5,6] list2 = [] fo ...
分类:
编程语言 时间:
2019-02-13 11:14:32
阅读次数:
175
常见的快排排序:快排实现原理,可以更好理解快排思想 输出结果时,我发现这种方法直接改变了原有列表(使用的Python3.6) 使用列表推导式和快速排序的递归思想,实现快排: 理解快速排序思想之后,这个方法,使用的代码非常少 而且该方法不改变原有的列表 ...
分类:
编程语言 时间:
2019-02-13 11:01:46
阅读次数:
171
/* 给定n头牛,m个谷仓,每头牛只能在一些特定的谷仓,一个谷仓只能有一头牛 问可行的安排方式 dp[i][j]表示前i头牛组成状态j的方案数,状态0表示无牛,1表示有牛 使用滚动数组即可 枚举到第i头牛时,状态j必须有i-1头牛,然后由这个状态推导出第i头牛的状态,再清0 */ #include ... ...
分类:
其他好文 时间:
2019-02-10 00:17:24
阅读次数:
184
[题目链接] https://www.lydsy.com/JudgeOnline/problem.php?id=2425 [算法] 类似与数位动态规划的思想 , 用组合数学进行简单推导即可 时间复杂度 : O(L ^ 3) [代码] ...
分类:
其他好文 时间:
2019-02-07 23:22:38
阅读次数:
212
题目链接:https://cn.vjudge.net/problem/HYSBZ-2131 题目大意:中文题目 具体思路:对于任意的两个位置,posA和posB,我们可以如下推导。 |posA-posB|<=2*(tA-tB) 2*tB-2*tA<=posA-posB<=2*tB-2*tA. 2*t ...
分类:
编程语言 时间:
2019-02-07 13:39:05
阅读次数:
203
"题目蓝链" Description 给定一个长度为$n$的数列$q_i$,定义 $$ F_j = \sum_{i j} \frac{q_i q_j}{(i j)^2} \\ E_i = \frac{F_i}{q_i} $$ 求出所有的$E_i$ Solution 直接上推导过程 $$ E_j = ...
分类:
其他好文 时间:
2019-02-05 14:31:51
阅读次数:
119