上一页 1 2 3 4 5 6 7 ··· 13 下一页
摘要: 题目大意:有两个函数,g[i] = k * i + b,另外一个函数f[i] = f[i-1] + f[i-2],问你从0到n-1的f(g[i])的和。解题思路:斐波那契数列有种递推的思路是:{f[i+1], f[i]; f[i], f[i-1]} = A ^ i其中A = {1, 1; 1, 0}... 阅读全文
posted @ 2016-10-17 17:24 _Wilbert 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 题目大意:给你一个序列,让你把它变成一个严格递增的序列。对每个数字,无论+1或者-1都消耗1,问你把它变成严格递增的序列的最小cost解题思路:DP首先根据题目,a[i+1] >= a[i] + 1,两边同时减去i+1,就得到a[i+1] - (i + 1) >= a[i] - i设b[i] = a... 阅读全文
posted @ 2016-10-10 21:05 _Wilbert 阅读(288) 评论(0) 推荐(0) 编辑
摘要: 题目大意:+ x表示向一个mutiset里增加一个数x- x表示向一个mutiset里面减少一个数x? x表示询问这个mutiset里面能够与x匹配的数的个数,匹配规则是x只由01组成,0表示偶数,1表示奇数。当x比要匹配的数长度短的时候,在x前面补0,当x比要匹配的数长度长的时候,在待匹配的数前面... 阅读全文
posted @ 2016-10-10 20:53 _Wilbert 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 题目大意:已知f[0] = 0, f[1] = 1, f[i] = f[i-1] * 2 + f[i-2],且g[n] = g[n-1] + f[n] * f[n],现在给出n,y,x,s,问你x^(g[n*y]) mod (s + 1)的值为多少。解题思路:首先可以得到的是g[n] = f[n] ... 阅读全文
posted @ 2016-09-20 20:39 _Wilbert 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 一、引言在平时做题目或者进行运算的时候,素数的出现次数总是十分频繁。今天我们就来一点一点的说一说关于素数的一些算法。二、朴素判断素数算法就判断素数而言,事实上是非常简单的了。根据定义,判断一个整数n是否是素数,只需要去判断在整数区间[2, n-1]之内,是否具有某个数m,使得n % m == 0。代... 阅读全文
posted @ 2016-09-19 21:23 _Wilbert 阅读(381) 评论(0) 推荐(0) 编辑
摘要: 题目大意:有n对二元组(key, value),两个相邻的元组间如果key的不互质,那么可以被移除,并获得两个元组的value值之和的分数,问你最多能有多少分数。解题思路:区间DP按照最裸的区间DP模型用记忆化搜索写是要超时的...本题的模型可以参考POJ-2955 Brackets题解这里有~设d... 阅读全文
posted @ 2016-09-19 18:26 _Wilbert 阅读(95) 评论(0) 推荐(0) 编辑
摘要: 题目大意:给你n个点,有m条边,让你求出这个图的最短路上的最小割,这个最小割。解题思路:直接求出最短路图然后dinic跑最小割就行。我遇到的一些错误点:1、用dinic算法求解最小割需要使用当前弧优化,否则会TLE2、最短路图注意求最短路的时候,每个边都是长度为1,也就是说可以bfs求。千万不要把权... 阅读全文
posted @ 2016-09-18 21:45 _Wilbert 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 题目大意:给你n个长度为ai的序列,让你把这n个序列合并,每次合并需要一个cost,值为合并的序列的长度之和,每次最多可以合并k个序列。现在问你,给出cost最大为T,最小的k是多少。解题思路:显然,可以用优先队列水一发,复杂度为nlognlogn二分枚举k,然后每次取最小的k个加在一起,加入队列,... 阅读全文
posted @ 2016-09-17 22:54 _Wilbert 阅读(134) 评论(0) 推荐(0) 编辑
摘要: 题目大意:给你一个完全图让你删除给出的这些边形成新的图,问你在新的图上的s点到其它所有点的距离。解题思路:BFS乱搞...补图的BFS的问题虽然很经典= =不过确实还是第一次做。很方。用一个map来保存邻接的信息。因为最多20000,很坑的是比赛时候题面给的是5000然后先从s来遍历所有点,如果邻接... 阅读全文
posted @ 2016-09-13 12:57 _Wilbert 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 解题思路:斜率优化DP这道题= =嘛算是斜率优化的入门题目了。还是非常经典的感觉。首先考虑,这道题目有经验的小伙子一眼就可以想出来状态转移方程是什么。显然是 dp[i] = min(dp[i], dp[j] + pow(sum[i] - sum[j] + i - j - 1 - L, 2));但是想... 阅读全文
posted @ 2016-09-13 12:40 _Wilbert 阅读(81) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 ··· 13 下一页