随笔分类 -  codeforses题目

cf 1155 d 最大区间和(变形 区间*x)
摘要:题意:一个数组(+-),一个 x (-100,100) ,我们可以对一个区间的数*x,求改变之后的最大区间和 思路:普通的最大区间和 d[i] =max(0,d[i-1]+a[i]),但这里由于一个区间可以*x 那么我们将这个可以*x的区间单独来看. d[i][0]表示普通状态 d[i][1]表示可 阅读全文

posted @ 2019-04-23 15:37 Helpp 阅读(278) 评论(0) 推荐(0)

cf 1062d 思维 欧拉筛变形
摘要:http://codeforces.com/contest/1062/problem/D 题意:给个n ,在n之内 所有(a,b) ,如果存在唯一的x 使a*|x| == b 或者 b* |x| == a (a,b>2)那么ans + |x| 求最后结果 思路:如果a%b==0那么肯定是唯一的x了, 阅读全文

posted @ 2018-11-19 22:06 Helpp 阅读(175) 评论(0) 推荐(0)

cf 1073c 二分 思维
摘要:题意:给定一个长为n的串,代表机器人的行走方式,要求机器人到达(x,y)点 将原串的子串修改,求最小的子串的长度 思路: 很容易知道如何到达x,y点 假设 res= abs(x)+abs(y);那么 n>=res && (n-res)%2==0 那么如何寻找一个子串呢? 用二分枚举长度len,然后枚 阅读全文

posted @ 2018-10-26 14:35 Helpp 阅读(240) 评论(0) 推荐(0)

cf 1066d 思维 二分
摘要:题意: 给定m个大小为k的箱子 用来装 a[i]大小的物品 规则:按照顺序装,等到没有空箱子之后在从前面的箱子中扔出所有,装后面的, 直到装完 按这个规则 最多装多少物品 思路:二分 将题意抽象出来,就是把尽量多的后面的装下去 也就是处理数组a的后缀就好了 那么起始位置用二分枚举出来。。 思路二:可 阅读全文

posted @ 2018-10-24 21:33 Helpp 阅读(247) 评论(0) 推荐(0)

cf 1060d 思维贪心
摘要:题意:有N个人,你要让他们坐成若干个圆环。 他们每个人需要坐一把椅子,左手边至少要有l个空椅子,右手边至少要有r个空椅子 ,问最少需要多少个椅子。 参考:https://blog.csdn.net/zxyoi_dreamer/article/details/82941006 思路 :贪心 左走最大的 阅读全文

posted @ 2018-10-20 16:53 Helpp 阅读(160) 评论(0) 推荐(0)

cf 1060e 树形dp 树上任意两点的距离和
摘要:题意: 给出一个树,把树上任意两个相隔一个点的点加一条边,问加完边之后任意两点的距离和是多少. 参考博客 :https://blog.csdn.net/Mr_Treeeee/article/details/82960566 思路:枚举边的贡献 算出所有点与点之间的距离(不跳的真实距离)。树形DP解决 阅读全文

posted @ 2018-10-20 16:50 Helpp 阅读(425) 评论(0) 推荐(0)

cf 1059e 思维 贪心 树
摘要:参考博客:http://www.cnblogs.com/waldenlake/p/9750249.html 题意:将一棵n个点的带权有根树剖分成尽量少的链,使得 (1)链的两个端点是祖先关系 (2)链含有的顶点个数小于等于L (3)链上所有点的点权和小于等于S。求出最少链的数量,如果无解输出-1。N 阅读全文

posted @ 2018-10-10 15:39 Helpp 阅读(223) 评论(0) 推荐(0)

cf 1059d 逆向思维 二分 简单几何
摘要:题意 给定n个点 问相切于x轴的圆,将所有的点都覆盖的最小半径是多少。 思路 : 问最小半径想到二分,但是判定条件如何去寻找? 不如将那n个点作为圆心 ,以半径r做圆, 符合条件的圆心在做完的圆内, 不过由于要和x轴相切,// (x-xa)*(x-xa)+(r-ya)*(r-ya) < =r*r 所 阅读全文

posted @ 2018-10-09 15:41 Helpp 阅读(200) 评论(0) 推荐(0)

cf1058d 几何 网格三角形
摘要:题目:给定n,m,k 判断是否存在三角形 三点在端点 且(0<=x<=n ,0<=y<=m),面积 = n*m/k http://codeforces.com/contest/1058/problem/D 思路:很容易知道 在网格上的三角形 ,面积*2是整数,所以n*m*2%k!=0 就是no 所以 阅读全文

posted @ 2018-10-05 14:57 Helpp 阅读(276) 评论(0) 推荐(0)

cf1058c 暴力
摘要:给定 n(n<=100) a[i]<=9 ,>=0 问是否可以把它分成相等的几块 http://codeforces.com/contest/1058/problem/C 思路 :完全暴力 , 和的最大不过是 9*100,然后判断和是否可能 阅读全文

posted @ 2018-10-05 14:49 Helpp 阅读(281) 评论(0) 推荐(0)

cf1058E 思维 前缀处理 位运算
摘要:题目大意:给定一个长度为 (n≤3×105)的数列ai(1≤ai≤10 18) 可以交换序列中一个数的任意二进制位的位置,问你可以选出多少区间经过操作后异或和是 0 链接:http://codeforces.com/contest/1058/problem/E 思路:由于二进制随意交换,那么它本身值 阅读全文

posted @ 2018-10-05 14:41 Helpp 阅读(430) 评论(0) 推荐(1)

导航