- 博客(9)
- 收藏
- 关注
原创 cf366c 背包+公式平移
题意给你两个集合a,b,然后一个k,一个集合中的几个数相加,除以另一个集合的几个数相加,等于k,问最多第一个集合中的数能使多少 数据范围集合中的数个数是1e5 思路先给他移项,移动之后就会发现这是一个容量是0的背包,由于容量是0,可能有负数,所以要向正方向去平移#include<cstdio>#include<cstring>#include<algorithm>#include<cmat
2017-03-27 11:30:11 483 1
原创 hdu3415
题意给你一堆数字,找一个小于k的区间,使这里面的和最大,这些数是一个环, **数据范围**n<=1e5 思路单调队列+前缀和,预处理个前缀和,然后就是用,然后,如果新的元素,小于尾巴,就加入单调队列,就行了#include<cstdio>#include<algorithm>#include<cmath>#include<cstring>using namespace std;const
2017-03-27 11:21:22 290
原创 cf 734e Anton and Tree
题意给你一棵树,树上的点有黑白两种颜色,如果涂一个点的颜色,那么他所有相邻的点并且与他相同的颜色,会一起变色。 **数据范围**2e5个点 题解主要是 缩点,将两个同样的点给并到一起,就可以了,由于他只有两个颜色,就用XOR了,比较好的解决了这个问题#include<cstdio>#include<cstring>#include<algorithm>#include<cmath>usi
2017-03-27 10:49:47 282
原创 cf487a fight the monster
题意给你一个英雄,给你一个怪物。各有生命,攻击,防御。商店卖攻击,防御,还有生命。英雄需要杀掉怪物,最后,怪物的生命<=0,英雄的生命>0这样才胜利,问最少需要花费多少钱 数据范围 所有的数都是1~100 思路这个由于是1~100 我一开始没有想枚举,想推出一个公式,但是没有推出来,后来讲了之后,枚举,买攻击,防御,最后血量自己算最后需要多少,然后就得出了#include<cstdio>#i
2017-03-27 10:41:28 312
原创 cf246c
题意给你n个数,然后用n个数构造k个不同的序列,每一个序列的数不能用两次,每个数都不同,n小于50,k<=((n+1)*n/2) 题解是我傻逼了。。。。。这个题。。。。。。我艹。。。。。 这么回事啊,就是它选取前x个数剩下的数随便选一个就行了。这种有(n - x)种方法。如此做来就有了那个数据范围#include<cstdio>#include<cstring>#include<algori
2017-03-13 21:34:34 277
原创 cf463d
题意给你n个数(1~n),k行,让你找这其中的最长公共子序列。n小于1000,k<5 思路这个题就是这么回事,你想啊,枚举第一行,如果,a[1][i] 在a[i]j后面的话,那么,就check(看其他的行中,是否都成立),如果成立,那么就可以推出,dp[i] = max(dp[i],dp[j] +1).要先来个预处理,处理每一个的位置#include<cstdio>#include<algori
2017-03-13 19:38:09 232
原创 字典树模板
这个字典树的模板就是#include<cstdio>#include<cstring>#include<algorithm>#include<cmath>using namespace std;const int N = 2e5 + 10;int lmax = 35 , tail = 0;int trie[32 * N][2] , s[40] , number[32 * N] , d[40
2017-03-09 14:33:04 223
原创 cf706d 01trie
题意有n次操作,每一次向加一个数x,或者减一个数x,(x必须在集合中存在),然后给你一些数,集合中最大和他xor得到的数是多大?(操作为2e5)每次的数为小于1e9 **思路**01trie,这个trie的方法就是你每次都用一个0,或者1来当字典,然后你每次查找的时候用一个贪心的思想去查找。,。,。,。能1就尽量取,如果实在没招也只能取0,最后就得到一个值,输出出来就好了。以前的trie的模板,。
2017-03-09 14:30:26 462
原创 cf 340b差积
题意给你n个点,每个点有x,y坐标,让你求出来能组成的四边形最大面积是多少 思路这个是一个叉积,叉积是啥呢?,就是给你四个点,我复制了一把别人的向量的叉积性质都忘完了……但是它可以用来判断点在直线的某侧。进而可以解决点是否在三角形内,两个矩形是否重叠等问题。向量的叉积的模表示这两个向量围成的平行四边形的面积。 设矢量P = ( x1, y1 ),Q = ( x2, y2 ),则矢量叉积定义为由(
2017-03-08 21:20:34 261
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人