- 博客(23)
- 收藏
- 关注
原创 BZOJ3514: Codechef MARCH14 GERALD07加强版
主席树+LCT 每次加边的时候判断一下是否成环 如果没有就加进去否则弹出环内比序号最小边 然后统计答案#include<cstdio>#include<iostream>#include<cstring>#include<cstdlib>#include<cmath>using namespace std;char c;inline void read(int &a){
2016-02-28 11:36:20 580
原创 BZOJ1095: [ZJOI2007]Hide 捉迷藏
Evan课件上讲了括号序列。。。 发现很厉害的样子 想了一个晚上才搞出来线段树维护就好了 岛娘: http://www.shuizilong.com/house/archives/bzoj-1095-zjoi2007hide-%E6%8D%89%E8%BF%B7%E8%97%8F/#include<cstdio>#include<iostream>#include<cstring>#i
2016-02-28 09:10:06 590
原创 BZOJ3926: [Zjoi20150]诸神眷顾的幻想乡
这一题有点坑。。注意longlongSAM裸题。。。#include<cstdio>#include<iostream>#include<cstring>#include<cstdlib>#include<algorithm>using namespace std;struct Node{ int len; Node *f,*last,*ch[10]; Node(
2016-02-27 19:00:32 574
原创 BZOJ2657: [Zjoi2012]旅游(journey)
我记得第一次看到这个题的时候我的小学弟把我们虐爆了 后来发现这TM就是树的直径啊!!! 日吗。。。#include<cstdio>#include<iostream>#include<cstring>#include<map>using namespace std;#define Side sidestruct side{ int x,y; inline frien
2016-02-27 10:56:02 360
原创 BZOJ3670: [Noi2014]动物园
KMP 一开始的想法是二分next然后nlogn 妥妥的T了 后来看大神题解发现时可以O(n)建造二倍的next的 自己居然想不到这么做。。。 马上要省选了感觉自己智商不够啊#include<cstdio>#include<iostream>#include<cstring>using namespace std;int next[1000004];int next2[100000
2016-02-27 10:16:36 429
原创 BZOJ3998: [TJOI2015]弦论
一开始想构造后缀树来着后来发现就是SAM上面跑一下就好了 时间感人QAQ#include<cstdio>#include<iostream>#include<cstring>using namespace std;char c;inline void read(int &a){ a=0;do c=getchar();while(c<'0'||c>'9'); while(c
2016-02-26 21:22:24 387
原创 BZOJ3716: [PA2014]Muzeum
一开始是懵逼的 因为不知道最大闭合子图能贪心 这个贪心是源于这个图的性质为了方便计算我们需要吧每个守卫的视角做成直角 且两边平行于xy轴 然后根据y降序排序依次将守卫插入并将每个的手办贡献减一下就好了 实在不理解看代码#include<cstdio>#include<algorithm>#include<iostream>#include<set>#include<queue>#
2016-02-21 10:51:52 822
原创 BZOJ3669: [Noi2014]魔法森林
LCT一开始自己脑子抽用节点的权值表示连向父亲的边的长度后来发现不能拿来搞翻转然后看了别人的题解 发现居然可以新开一个点。。。。药丸之后又调试了一天 最后听了度教的话 重打。。发现好像是自己的Access打跪了。。。。完了。。。。一天只调好一道题。。。。去死吧 !#include#include#include#include#includeus
2016-02-20 18:07:29 335
原创 BZOJ3667: Rabin-Miller算法
应用但是不知道为什么我的素数测试出错几率很大?#include#include#include#includeusing namespace std;#define ll long longll n,m;ll lowbit(ll x){return x&-x;}const int maxn=5000000;bool check[50000001];int prime
2016-02-19 17:09:41 584
原创 博弈论与SG函数
由于BZOJ被卡 有时间去看一些以前没去看的东西了比如说博弈论SG是用来应对一类博弈论问题的博弈论问题可以抽象成一个有向无环图然后G(x)=mex({G(y)|x->y})mex表示后面这个集合最小的没有的元素(非负mex({1,2})=0 mex({})=0然后连边就是以是否可以到达这个决策点连边多个游戏的并的先手必胜可以用每个游戏的SG函数的异或求解(Xor)
2016-02-18 17:12:40 376
原创 BZOJ3122: [Sdoi2013]随机数生成器
BSGS原来就是SB暴力。。。日了狗了#include<cstdio>#include<iostream>#include<cstring>#include<map>#include<cmath>using namespace std;#define ll long longll ex_gcd(ll &x,ll &y,ll a,ll b){ if(b==0){x=1;y=0;
2016-02-17 13:48:43 369
转载 关于二次剩余
好多大神都说不会证明那个式子。。 然后发现这个blog有讲 http://blog.csdn.net/acdreamers/article/details/10182281
2016-02-17 10:34:35 388
原创 BZOJ2190: [SDOI2008]仪仗队
有两种做法一个是欧拉函数的前缀和另一个是莫比乌斯反演 貌似数据水能让莫比乌斯反演过去 我用的是莫比乌斯反演#include<cstdio>#include<iostream>#include<cstring>using namespace std;const int maxn=40001;int mu[maxn],pre[maxn],prime[maxn];bool check[ma
2016-02-17 09:38:44 389
原创 BZOJ3809: Gty的二逼妹子序列
莫队 哈。。。。一开始没注意用树状数组。。。妥妥的TTTTT 然后才改了分块lowbit(T)#include<cstdio>#include<iostream>#include<cstring>#include<cmath>#include<algorithm>using namespace std;const int maxn=100001;int Pos[maxn];
2016-02-16 17:04:00 647
原创 BZOJ1132: [POI2008]Tro
鬼畜的BZOJ。。。换个输出就A?!!! 叉积的前缀和方法#include<cstdio>#include<iostream>#include<cstring>#include<cmath>#include<algorithm>using namespace std;#define youhua __attribute__((optimize("O2")))struct Point
2016-02-16 11:26:54 429
原创 BZOJ4407: 于神之怒加强版
莫比乌斯反演 发现搞出来的式子和昨天的差不多#include<cstdio>#include<iostream>#include<cstring>using namespace std;const int mod=1000000007;const int maxn=5000001;bool check[maxn];int sq[maxn],prime[maxn],G[ma
2016-02-16 09:33:17 726
原创 BZOJ2820: YY的GCD
很好的一道莫比乌斯反演 看了题解才把式子推出来 去看ioi爷的博客吧 http://www.cnblogs.com/iwtwiioi/p/4132095.html#include<cstdio>#include<cstring>#include<iostream>using namespace std;constint maxn=10000001;int mu[maxn],G[ma
2016-02-15 17:20:53 400
原创 BZOJ1138: [POI2009]Baj 最短回文路
BFS丑的不得了。。。9.5s过的。。。。。#include#include#include#includeusing namespace std;char c;inline void read(int &a){a=0;do c=getchar();while(c'9');while(c='0')a=(a<<3)+(a<<1)+c-'0',c=getchar();}
2016-02-15 12:46:16 460
原创 BZOJ2843: 极地旅行社
裸LCT#include<cstdio>#include<cstring>#include<cstdlib>using namespace std;struct Node{ Node *lc,*rc,*f; int data; int sum; bool Rev; Node *pl; inline bool h(){return f->lc==this||
2016-02-12 14:20:42 476
原创 BZOJ3676: [Apio2014]回文串
PAM裸题 关于PAM怎么构造我之前有个链接 然后就是每次加num就好了 最后统计一下 我打的代码常数打的吓人#include<cstdio>#include<iostream>#include<cstring>using namespace std;struct Node{ int len; Node *ch[31]; Node *last; int num;
2016-02-11 22:05:01 438
原创 BZOJ2806: [Ctsc2012]Cheat
23333调了好久发现是后缀边搞错了。。。DP我是直接Copy别人的。。。反正就是SAM+DP嘛。。。#include#include#include#includeusing namespace std; struct Node{ Node *last; Node *ch[3]; int len; Node(){len=0;last=
2016-02-09 09:19:06 547
原创 BZOJ3323: [Scoi2013]多项式的运算
很水的一道Splay维护题好吧我其实被卡的很惨。。。常数大的要死注意一下放标的顺序与时机这样可以大大减小常数#include#include#include#includeusing namespace std;char c;#define ll long longinline void read(ll &a){ a=0;do c=getchar();while(
2016-02-05 14:40:57 784
原创 BZOJ3350: 相似回文串
我只想到了转化成图求染色方案 然后后来ydc大爷说这个是论文题。。 原来是弦图啊!!#include<cstdio>#include<iostream>#include<set>#include<cstring> #include<set>#include<map>using namespace std;constint mod=1000000007;char S[500000
2016-02-04 14:18:31 646
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人