- 博客(7)
- 收藏
- 关注
原创 Floyd邻接表优化:Poj3275 Ranking the Cows
题目: http://poj.org/problem?id=3275分析: 如果要对n个数排序,需要知道任意两个数的大小关系,即n*(n-1)/2对关系; 现在知道m条边(a>b),由此可以确定知道了多少对大小关系(假设为sum对); 则答案为n*(n-1)/2 - sum; 如何知道任意两对是否已经知道了大小关系? 很容易想到Floyd,可是O(n^3)会超时,这里用邻接表...
2018-02-28 10:50:33 274
原创 Codeforces Gym 101498K. Two Subarrays
题目: http://codeforces.com/gym/101498/problem/K题意: 一个数组的stength这样定义: 给定一个数组,求两个互不相交的子数组的strength差值的绝对值的最大值分析: 由于n到了1e5,T又有1e2,所以应该是一个O(n)的算法或者O(nlogn)的算法; 这里用O(n)的DP; lf[i][2]:以i开头,奇/偶数个项的最大值...
2018-02-27 10:15:44 291
原创 Codeforces Round#466 E. Cashback
题目: http://codeforces.com/contest/940/problem/E题意: 给一串数,能把它分成连续的几段,每段有一个分值,求分值和最小能为多少; 分值计算方法:假设这段有k个数,则分值为除去前 个数(c为常数)之后的和。分析: 考虑若有c+1个数,则可以把c个数分为1段,1个数分为另一段; 因为若c+1个数中的最小值在两头,则答案更优,若在中间,则答...
2018-02-24 22:11:50 308
原创 Codeforces Gym 101498G. Super Subarray
题目: http://codeforces.com/gym/101498/problem/G题意: 给n个数,求有多少对[l,r]使得∑data[i] (i∈[l,r]) 能被任一data[j]整除 (j∈[l,r])分析: 设一堆数的和为sum,这堆数的最小公倍数为lcm; 若这堆数的和,能被任一数整除,则sum%lcm==0; (理解:最小的能被任一数整除的数就是lcm,...
2018-02-24 10:37:57 420
原创 Codeforces#464 D. Love Rescue
题目: http://codeforces.com/contest/939/problem/D题意: 两个长度相同字符串; 一个魔法(① , ②) 可以将字母①->②或者②->①; 一个魔法可以使用无限次; 一个魔法可以对任意字符串使用; 问至少多少个魔法,才能将两个字符串变成相同的;分析: 若两个字符串上相同位置的字母不同,则表明这两个字符一定能通过某些中操作变...
2018-02-17 21:57:41 318
原创 Codeforces#462 D. A Determined Cleanup
题目: http://codeforces.com/contest/934/problem/D题意: 求多项式f(x)的系数,使得f(x)=q(x)*(x+k)+p;分析: 设q(x)=b0+b1*x+b2*x^2+…+bn*x^n ; 则f(x)=(k*b0+p)+(k*b1+b0)*x+…+(k*bn-1+bn-2)*x^(n-1)+bn-1*x^n ; 已知fx的每个系数范...
2018-02-16 16:09:34 226
原创 Codeforces#462 C. A Twisty Movement
题目: http://codeforces.com/contest/934/problem/C题意: 给一段仅由1 2组成的数列; 可以选择两个数l<=r,反转[l,r]; 求可得到的最大不下降子序列是多长;分析: 动态规划; 首先由前缀和(one[i],two[i])分别统计出区间内的1 2个数; 接下来分析: ①、最长子序列全部由1组成 ②、最长子序列全部由2组...
2018-02-16 11:32:48 300
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人