随笔分类 -  贪心

摘要:题目传送门 1 /* 2 题意:求邀请顺序使得去爬山的人最多,每个人有去的条件 3 贪心+优先队列:首先按照l和r从小到大排序,每一次将当前人数相同的被邀请者入队,那么只要能当前人数比最多人数条件小,该人能 被邀请,而且不用考虑最少人数的条件。网上的写... 阅读全文
posted @ 2015-08-06 20:19 Running_Time 阅读(198) 评论(0) 推荐(0)
摘要:好的,数据加强了,wa了题目传送门 1 /* 2 题意:1到n分成m组,每组和相等 3 贪心:先判断明显不符合的情况,否则肯定有解(可能数据弱?)。贪心的思路是按照当前的最大值来取 4 如果最大值大于所需要的数字,那么去找没有vis的数字 5 */ 6 /******... 阅读全文
posted @ 2015-08-06 18:33 Running_Time 阅读(277) 评论(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 贪心:每次把一个丢掉,选择最小的。累加求和,重复n-1次 3 */ 4 /************************************************ 5 Author :Running_Time 6 Created Time :... 阅读全文
posted @ 2015-08-02 13:28 Running_Time 阅读(196) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 题意:不懂。。。 3 线段树+树状数组+贪心:贪心从第一位开始枚举,一个数可以是循环节的末尾或者在循环节中,循环节(循环节内部是后面的换到前面,最前面的换到最后面)。线段树维护最大值,树状数组维护区间是否是循环节,查找前面最左边不是循环节的可用二分。我... 阅读全文
posted @ 2015-08-01 10:26 Running_Time 阅读(279) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 题意:求从(1, 1)走到(n, m)的二进制路径值最小 3 BFS+贪心:按照标程的作法,首先BFS搜索所有相邻0的位置,直到1出现。接下去从最靠近终点的1开始, 4 每一次走一步,不走回头路,只往下或往右走。因为满足i = j +... 阅读全文
posted @ 2015-07-31 09:12 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 阅读(279) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 贪心:按照执行时间长的优先来排序 3 */ 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 using namespace std;11 12 const int ... 阅读全文
posted @ 2015-07-19 14:04 Running_Time 阅读(137) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 题意:取长度不小于m的序列使得和最大 3 贪心:先来一个前缀和,只要长度不小于m,从m开始,更新起点k最小值和ans最大值 4 */ 5 #include 6 #include 7 using namespace std; 8 9 const int ... 阅读全文
posted @ 2015-07-16 08:42 Running_Time 阅读(140) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 题意:n个头,m个士兵,问能否砍掉n个头 3 贪心/思维题:两个数组升序排序,用最弱的士兵砍掉当前的头 4 */ 5 #include 6 #include 7 #include 8 using namespace std; 9 10 const in... 阅读全文
posted @ 2015-07-14 10:14 Running_Time 阅读(224) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 贪心:因为可以任意修改,所以答案是没有出现过的数字的个数 3 */ 4 #include 5 #include 6 #include 7 using namespace std; 8 9 const int MAXN = 5e3 + 10;10 const ... 阅读全文
posted @ 2015-07-14 10:12 Running_Time 阅读(177) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 贪心:全排列函数使用,更新最值 3 */ 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 #include 11 #include 12 #include 13 #i... 阅读全文
posted @ 2015-07-14 10:11 Running_Time 阅读(217) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 题意;从原点出发,四个方向,碰到一个点向右转,问多少次才能走出,若不能输出-1 3 模拟:碰到的点横坐标相等或纵坐标相等,然而要先满足碰到点最近, 4 当没有转向或走到之前走过的点结束循环。dir数组使得代码精简巧妙 5 对点离原点排... 阅读全文
posted @ 2015-07-14 10:08 Running_Time 阅读(264) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 题意:套娃娃,可以套一个单独的娃娃,或者把最后面的娃娃取出,最后使得0-1-2-...-(n-1),问最少要几步 3 贪心/思维题:娃娃的状态:取出+套上(2),套上(1), 已套上(0),先从1开始找到已经套好的娃娃层数, 4 ... 阅读全文
posted @ 2015-06-29 17:04 Running_Time 阅读(241) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 找规律/贪心:ans = n - 01匹配的总数,水 3 */ 4 #include 5 #include 6 #include 7 #include 8 #include 9 using namespace std;10 11 const int MAX... 阅读全文
posted @ 2015-06-29 16:48 Running_Time 阅读(106) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 题意:某几列的数字翻转,使得某些行全为1,求出最多能有几行 3 想了好久都没有思路,看了代码才知道不用蠢办法,匹配初始相同的行最多能有几对就好了,不必翻转 4 */ 5 #include 6 #include 7 #include 8 #include... 阅读全文
posted @ 2015-06-26 12:26 Running_Time 阅读(123) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 题意:任意排列第一个字符串,使得有最多的不覆盖a/b字符串出现 3 字符串处理/贪心:暴力找到最大能不覆盖的a字符串,然后在b字符串中动态得出最优解 4 恶心死我了,我最初想输出最多的a,再最多的b,然而并不能保证是最多的:( 5 */ 6 #inc... 阅读全文
posted @ 2015-06-13 14:23 Running_Time 阅读(187) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 题意:给出一种方案使得abs (A - G) 6 #include 7 #include 8 #include 9 #include 10 using namespace std;11 12 const int MAXN = 1e6 + 10;13 cons... 阅读全文
posted @ 2015-06-10 16:13 Running_Time 阅读(165) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 贪心:排序后,当a[3] > 2 * (a[1] + a[2]), 可以最多的2个,其他的都是1个,ggr,ggb, ggr。。。 ans = a[1] + a[2]; 3 或先2个+1个,然后k个rgb。。。r = x + k; g = 2 * (x + z) +... 阅读全文
posted @ 2015-06-10 16:00 Running_Time 阅读(143) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 贪心:按照能选的个数和点数降序排序,当条件不符合就break,水题啊! 3 */ 4 #include 5 #include 6 #include 7 #include 8 using namespace std; 9 10 const int MAXN =... 阅读全文
posted @ 2015-06-10 15:54 Running_Time 阅读(136) 评论(0) 推荐(0)