随笔分类 -  Codeforces

摘要:以后每做完一场CF,解题报告都写在一起吧暴力||二分A - Bear and Elections题意:有n个候选人,第一个候选人可以贿赂其他人拿到他们的票,问最少要贿赂多少张票第一个人才能赢分析:正解竟然是暴力!没敢写暴力,卡了很久,导致这场比赛差点爆零!二分的话可以优化,但对于这题来说好像不需要。... 阅读全文
posted @ 2015-08-30 21:05 Running_Time 阅读(210) 评论(0) 推荐(0)
摘要:题目传送门题意:a % x == b,求符合条件的x有几个数学:等式转换为:a == nx + b,那么设k = nx = a - b,易得k的约数(>b)的都符合条件,比如a=25 b=1,那么24,12, 8, 6, 4, 3, 2都可以,所以只要求出k的约数有几个就可以了,a #include... 阅读全文
posted @ 2015-08-20 10:55 Running_Time 阅读(202) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 题意:问选出3个数成等比数列有多少种选法 3 map:c1记录是第二个数或第三个数的选法,c2表示所有数字出现的次数。别人的代码很短,思维巧妙 4 */ 5 /************************************************ ... 阅读全文
posted @ 2015-08-06 21:11 Running_Time 阅读(181) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 题意:给出一系列读者出行的记录,+表示一个读者进入,-表示一个读者离开,可能之前已经有读者在图书馆 3 构造:now记录当前图书馆人数,sz记录最小的容量,in数组标记进去的读者,分情况讨论一下 4 */ 5 /***********************... 阅读全文
posted @ 2015-08-06 21:10 Running_Time 阅读(236) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 hash+set:首先把各个字符串的哈希值保存在set容器里,然后对于查询的每一个字符串的每一位进行枚举 3 用set的find函数查找是否存在替换后的字符串,理解后并不难。另外,我想用64位的自然溢出wa了,不清楚 4 */ 5 /********... 阅读全文
posted @ 2015-08-05 16:31 Running_Time 阅读(238) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 题意:删除若干行,使得n行字符串成递增排序 3 暴力+构造:从前往后枚举列,当之前的顺序已经正确时,之后就不用考虑了,这样删列最小 4 */ 5 /************************************************ 6 Auth... 阅读全文
posted @ 2015-08-03 13:35 Running_Time 阅读(304) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 贪心+构造:因为是对称的,可以全都左一半考虑,过程很简单,但是能想到就很难了 3 */ 4 /************************************************ 5 Author :Running_Time 6 Creat... 阅读全文
posted @ 2015-08-03 13:32 Running_Time 阅读(207) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 构造+暴力:按照题目意思,只要10次加1就变回原来的数字,暴力枚举所有数字,string大法好! 3 */ 4 /************************************************ 5 Author :Running_Ti... 阅读全文
posted @ 2015-08-03 13:30 Running_Time 阅读(195) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 贪心:每次把一个丢掉,选择最小的。累加求和,重复n-1次 3 */ 4 /************************************************ 5 Author :Running_Time 6 Created Time :... 阅读全文
posted @ 2015-08-02 13:28 Running_Time 阅读(196) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 构造:首先先选好k个不同的值,从1到k,按要求把数字放好,其余的随便放。因为是绝对差值,从n开始一下一上, 3 这样保证不会超出边界并且以防其余的数相邻绝对值差>k 4 */ 5 /**********************************... 阅读全文
posted @ 2015-08-02 12:54 Running_Time 阅读(205) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 题意:一个汉堡制作由字符串得出,自己有一些原材料,还有钱可以去商店购买原材料,问最多能做几个汉堡 3 二分:二分汉堡个数,判断此时所花费的钱是否在规定以内 4 */ 5 #include 6 #include 7 #include 8 using na... 阅读全文
posted @ 2015-07-25 18:07 Running_Time 阅读(250) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 题意:求一个点为根节点,使得到其他所有点的距离最短,是有向边,反向的距离+1 3 树形DP:首先假设1为根节点,自下而上计算dp[1](根节点到其他点的距离),然后再从1开始,自上而下计算dp[v], 4 此时可以从上个节点的信息递推... 阅读全文
posted @ 2015-07-21 10:02 Running_Time 阅读(284) 评论(1) 推荐(1)
摘要:题目传送门 1 /* 2 BFS:三维BFS,坐标再加上步数,能走一个点当这个地方在步数内不能落到。因为雕像最多8步就会全部下落, 3 只要撑过这个时间就能win,否则lose 4 */ 5 #include 6 #include 7 #include 8 #inclu... 阅读全文
posted @ 2015-07-20 14:24 Running_Time 阅读(238) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 构造:从大到小构造,每一次都把最后不是9的变为9,p - p MOD 10^k - 1,直到小于最小值。 3 另外,最多len-1次循环 4 */ 5 #include 6 #include 7 #include 8 #include 9 us... 阅读全文
posted @ 2015-07-20 14:23 Running_Time 阅读(248) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 最短路: 不仅扫描边,还要扫描点;点有两种情况,一种刚好在中点,即从u,v都一样,那么最后/2 3 还有一种是从u,v不一样,两种的距离都是l 4 模板错了,逗了好久:( 5 */ 6 #include 7 #include... 阅读全文
posted @ 2015-07-19 21:37 Running_Time 阅读(208) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 贪心:当m == 2时,结果肯定是ABABAB或BABABA,取最小改变量;当m > 2时,当与前一个相等时, 改变一个字母 3 同时不和下一个相等就是最优的解法 4 */ 5 #include 6 #include 7 #include... 阅读全文
posted @ 2015-07-19 17:57 Running_Time 阅读(278) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 数学:这题一直WA在13组上,看了数据才知道是计算cost时超long long了 3 另外不足一个区间的直接计算个数就可以了 4 */ 5 #include 6 #include 7 #include 8 #include 9 #incl... 阅读全文
posted @ 2015-07-19 13:09 Running_Time 阅读(226) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 贪心:暴力贪心水水 3 */ 4 #include 5 #include 6 #include 7 using namespace std; 8 9 const int MAXN = 1e2 + 10;10 const int INF = 0x3f3... 阅读全文
posted @ 2015-07-18 18:30 Running_Time 阅读(169) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 DP:先用l,r数组记录前缀后缀上升长度,最大值会在三种情况中产生: 3 1. a[i-1] + 1 7 #include 8 #include 9 using namespace std;10 11 const int MAXN = 1e5... 阅读全文
posted @ 2015-07-18 18:26 Running_Time 阅读(163) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 递推:用cnt记录前缀值,查询区间时,两个区间相减 3 */ 4 #include 5 #include 6 #include 7 #include 8 using namespace std; 9 10 const int MAXN = 1e5 + 10... 阅读全文
posted @ 2015-07-18 17:17 Running_Time 阅读(197) 评论(0) 推荐(0)