01 2015 档案
摘要:如题。#include#include#includeusing namespace std;#define N 200001#define BN 451int n,m,a[N],b[N],sumv[BN],l[N],num[N],num2[N],Lim,siz[BN],anss[N];struct...
阅读全文
摘要:学习这位神犇的:http://blog.csdn.net/jiangyuze831/article/details/41476865注意:①排序时第一关键字是左端点所在块编号(块状树),第二关键字是右端点dfs序。②维护的当前链不能包括lca(l,r),但最后要计算上lca(l,r)的答案。③对l-...
阅读全文
摘要:#includeusing namespace std;int T,n,m,x,y;long long sum[100001],ans,d[100001];int main(){ scanf("%d",&T); for(;T;--T) { scanf("%d%d",&n,&m); f...
阅读全文
摘要:对一棵树黑白染色一定符合题意。图一定有生成树。因此,仅有一个孤立节点的联通块不合题意。DFS。#includeusing namespace std;int n,m,en,x,y,v[1000001],first[500001],next[1000001],cnt;bool vis[500001];...
阅读全文
摘要:类似某noip国王游戏。考虑交换两个题目的顺序,仅会对这两个题目的贡献造成影响。于是sort,比较时计算两个题目对答案的贡献,较小的放在前面。#include#includeusing namespace std;typedef long long ll;struct Point{ll T,K;}a...
阅读全文
摘要:#includeusing namespace std;int T=0;long long h,a,b,k;int main(){ freopen("bzoj3856.in","r",stdin); while(1) { scanf("%lld%lld%lld%lld",&h,&a,...
阅读全文
摘要:不带修改主席树裸题莫队+权值分块裸题。复杂度O(m*sqrt(n))。P.S.题目描述坑爹,第二个数是权值的范围。#include#include#includeusing namespace std;#define N 300001#define M 10001int f,c;inline voi...
阅读全文
摘要:由于子弹的轨迹是可逆的,因此我们可以枚举所有敌人的位置,然后统计他们能打到的位置,这些位置也就是能打到他们的位置咯。O(n*k)。#includeusing namespace std;int n,m,a[101][101],x,y,ans;int main(){ scanf("%d%d",&n,&...
阅读全文
摘要:引用题解:http://hzwer.com/5153.html当然,二分可以换成哈希表。#include#include#includeusing namespace std;#define MOD 2501typedef unsigned long long ull;const ull seed1...
阅读全文
摘要:引用题解:http://blog.csdn.net/popoqqq/article/details/41084047#include#includeusing namespace std;typedef unsigned long long ull;int n,m,a,b,q;const ull s...
阅读全文
摘要:#include#includeusing namespace std;typedef vector::iterator VER;#define MOD 100007vectorv[MOD];int n,m,t;int main(){ scanf("%d%d",&n,&m); for(int i=1...
阅读全文
摘要:二分答案,然后搞出hash值扔到哈希表里。期望复杂度O(n*log(n))。next数组版哈希表#include#includeusing namespace std;typedef unsigned long long ull;const ull seed=29;#define MOD 2007u...
阅读全文
摘要:#include#include#includeusing namespace std;#define N 50001#define SQRT 227int n,m,xs[N],ys[N],ks[N],op[N],en,ma[100001],en2,a[100001];int num[N],l[SQ...
阅读全文
摘要:让蒟蒻见识到了常数大+滥用STL的危害。很久之前的Splay#include#includeusing namespace std;#define maxn 110000#define INF 2147483647int n,m,l,r,fa[maxn],c[maxn][2],val[maxn],h...
阅读全文
摘要:#include#includeusing namespace std;int n;char s[100001],table[]="luvletter";int main(){ scanf("%d",&n); getchar(); for(;n;--n) { gets(s); int...
阅读全文
摘要:我们二分/分块枚举答案x,暴力把除了最短的字符串以外的其他字符串的x长度子串哈希搞出来,分别扔到set里。然后暴力枚举最短的字符串的x长度字串,查看是否在全部的set里出现过。#include#include#include#includeusing namespace std;typedef un...
阅读全文