不来也不去的一只失忆蝴蝶

曾迷途才怕追不上满街赶路人

Tree

题目大意有一颗点权树,选择k条点不相交的树路径,价值为覆盖点的点权和除以k+1。 现在你可以给每个点的点权由x变成(x+c)%lim。0<=c<=m。 保证m<lim,x<limm<lim,x<lim。 求最大价值。分数规划先考虑不改变点权或是说点权已知的...

2016-12-24 16:47:19

阅读数:324

评论数:0

完全背包问题

题目大意做法定义有数量限制的叫大件,其余是小件。 考虑最小的那个体积v1。 如果连v1都是大件,DP容易解决。 不然的话,考虑在模v1意义下进行,最终要凑出的S必定是S%v1。 问题在于,凑出S%v1不一定能凑出S。 实际上,如果能凑出x,x+v1也能凑出。 因此考虑求出每个模意义下能...

2016-12-23 22:42:09

阅读数:319

评论数:0

最长不下降子序列

题目大意a1=t0 an=(A*an-1^2+B*an+C)%D(n>1) 求该序列最长不下降子序列长度暴力n不是很大显然可以暴力。 n很大呢? 那就不断减循环节长度直至减到一个阈值内,再暴力。 正确性显然,只要阈值不要设太小。#include<cstdio> #inc...

2016-12-23 22:32:52

阅读数:257

评论数:0

类欧几里得算法小结

基本定义f(a,b,c,n)=∑ni=0⌊ai+bc⌋f(a,b,c,n)=\sum_{i=0}^n\lfloor\frac{ai+b}{c}\rfloor g(a,b,c,n)=∑ni=0i⌊ai+bc⌋g(a,b,c,n)=\sum_{i=0}^ni\lfloor\frac{ai+b}{c}...

2016-12-23 22:22:34

阅读数:3735

评论数:3

[51nod 1362]搬箱子

题目描述有一个n*m的棋盘,左上角为(0,0),右下角为(n,m).在左上角有一个箱子(箱子是放在交叉点上的)。现在要把箱子搬到最后一排。搬的时候只有向右,向下,或者向右下方走一步。也就是说,假如箱子在(x,y),那么下一步只能把他搬到(x+1,y)或(x,y+1)或(x+1,y+1). 问有多...

2016-12-21 22:43:21

阅读数:520

评论数:0

[51nod 1139]奇妙等式的解

题目描述五个不同自然数a < b < c < d < e 满足a^2 + b^2 + c^2 + d^2 + e^2 = abcde。给出1个数N,求e <= N的全部的解。构造考虑构造算法。 假如a,b,c,d,e是合法解。 bcde-a,b,c,d,e也是合法...

2016-12-21 22:34:06

阅读数:338

评论数:0

[51nod 1471]小S的兴趣

题目描述小S喜欢有趣的事。但是,每个人的兴趣都是独特的。小S热衷于自问自答。有一天,小S想出了一个问题。 有一个包含n个正整数的数组a和针对这个数组的几个问题。这些问题有两种类型: 1. 在数组下标l到r的部分上,将一个单元格循环移动到右端。即以下面方式重新分配数组上的元素。 a[...

2016-12-21 20:42:00

阅读数:336

评论数:0

[51nod 1361]有一种递推

看大爷的题解吧…… 这里写链接内容

2016-12-21 20:40:28

阅读数:458

评论数:0

[51nod 1327]棋盘游戏

题目描述有一个N行M列的棋盘,即该棋盘被分为N*M格。现在向棋盘中放棋子,每个格子中最多放一个棋子,也可以一个不放。放完棋子后需要满足如下要求: 1)对于第i行来说,其从左往右的前left[i] 个格子(即最左侧的left[i] 个连续的格子)中恰好一共有1个棋子; 2)对于第i行来说,其从右...

2016-12-21 20:38:57

阅读数:453

评论数:0

[51nod 1587]半现串

题目大意有两个串S,T。T的长度是d。我们说T在S中半现的条件是当T的某一个长度为 ⌊d/2⌋ 的子串是S的一个子串。(子串是在原串中连续出现的一段字符串)。 现在给定一个原串s,另外给出x,y,他们都只包含数字字符,问区间[x,y]中在s中半现的数字有多少个。经典套路先转化为补集问题。 将S...

2016-12-21 20:35:53

阅读数:375

评论数:0

[51nod 1203]JZPLCM

题目大意求区间lcm。带模运算。做法不知道有没有更简单的做法。 最小公倍数是什么意思?一堆数的最小公倍数,就是对于每一个质数p,这些数每个数中p的次数的最大值k,然后最小公倍数就会包含一个p^k。 p很大时k会很小,p很小时k会很大,这是两个互相制约的因素,因此考虑使用两种算法然后进行平衡结合...

2016-12-12 22:24:27

阅读数:523

评论数:0

[51nod 1527]城堡迷阵

题目描述链接偏序性设num表示一个子树游历完的时间,f表示一个节点连往父亲的边的权值。g表示一颗子树根节点认为是时刻0,游历整个子树的最小t值和。 对于相邻两个游历儿子y和z,交换y和z不会更优的条件(假设这时经过了t的时间): (t+f[y])∗size[y]+g[y]+(t+f[y]∗2+...

2016-12-12 22:22:26

阅读数:337

评论数:0

[51nod 1531]树上的博弈

题目描述有一棵n个点的有根树,他有m个叶子结点(叶子结点是那些没有孩子的结点)。边由父亲指向孩子。数字1到m被分配到每一个叶子中。每一个叶子有一个数字,并且每一个数字恰好被分配到一个叶子中。 刚开始的时候根部有一个棋子。两个玩家轮流移动棋子,每一步都会将这个棋子向他的某一个孩子移动;如果玩家不能...

2016-12-12 22:16:16

阅读数:723

评论数:0

[51nod 1594]Gcd and Phi

题目大意求所有(i,j)满足1<=i<=n和1<=j<=n,phi(i)和phi(j)的gcd的欧拉函数值和。数论题挺简单的。 枚举gcd然后莫比乌斯反演一波。 接下来的式子中需要用到的均能够进行n log n预处理。 式子不太想写了, 可以看看代码。#include...

2016-12-12 22:13:32

阅读数:388

评论数:0

[51nod 1223]分数等式的数量

题目大意有这样一个分数等式:1/X + 1/Y = 1/N,(X,Y,N > 0)。给出L,求有多少满足X < Y <= L的等式。 例如:L = 12,满足条件的等式有3个,分别是:1/3 + 1/6 = 1/2, 1/4 + 1/12 = 1/3, 1/6 + 1/12 =...

2016-12-12 22:10:45

阅读数:421

评论数:0

[51nod 1294]修改数组

题目描述给出一个整数数组A,你可以将任何一个数修改为任意一个正整数,最终使得整个数组是严格递增的且均为正整数。问最少需要修改几个数?做法对于i和j(i<ji<j),因为要严格递增所以a[j]-a[i]>=j-i。 我们把a[i]变成a[i]-i,在新数组上做最长不下降序列表示最...

2016-12-12 22:00:06

阅读数:258

评论数:0

[51nod 1309]Value of all Permutations

题目大意长度为N的整数数组A,有Q个查询,每个查询包含一个数M,对A的所有不同排列,执行find函数(需用到查询中的M),你来计算find函数的返回值的和。由于结果很大,输出Mod 1000000007的结果。find(int permutation_A[], int M) { x = L...

2016-12-09 22:44:44

阅读数:207

评论数:0

[51nod 1375]再选数

题目描述从前有n个正整数,我们令它为a[1]到a[n]。现在要从选出恰好k个数(如果k=-1则为选任意个数,但是至少选一个),要求这些数的最大公约数是1,问有多少种方案? 答案可能很大,模998,244,353输出。搞一发可以设f[x]表示选出恰好k个数gcd为x的方案数。 设g[x]表示选出...

2016-12-08 17:34:34

阅读数:311

评论数:0

[51nod 1430]奇偶游戏

题目描述有n个城市,第i个城市有ai个人。Daenerys和Stannis是两个恶魔。他们在玩一个游戏,他们轮流去破坏城市。每一轮破坏一个城市并杀光里面所有的人。直到剩下k个城市为止。 如果最后剩下的总人数是偶数那么Daenerys获得胜利,否则Stannis获得胜利。 现在给定一个局面,要求...

2016-12-08 17:31:45

阅读数:229

评论数:0

告别

题目大意一个n的排列,每次可以选择三个不同位置(这三个位置有序,(2,1,3)与(1,2,3)不同),然后对它们进行一次轮换。 只能操作m次,某一次操作过后当前排列变成了目标排列则停止操作。 每次均等概率选择三个有序位置进行操作。 在模意义下求m次操作内变成目标排列的概率。设状态首先可以扭转...

2016-12-06 17:03:07

阅读数:269

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭