自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(115)
  • 收藏
  • 关注

原创 ural 1069. Prufer Code

1069. Prufer CodeTime limit: 0.25 secondMemory limit: 8 MBA tree (i.e. a connected graph without cycles) with vertices is given (N ≥ 2). Vertices of the tree are numbered by the integers

2013-11-20 20:38:56 1011

原创 ural 1056. Computer Net 树的重心

很裸的求树的重心。题意是给出一棵树,然后求树中一个点,使得他到树上最远点的距离最小。首先树的直径比较好求,就是先固定一个点,然后求这个点在树上的最远点,然后再从这个最远点再求一次最远点,两次得到的最远点就是树的直径的两个端点。然后发现求树的重心,就是求最远点,很明显树上所有点的最远点都在直径的两个端点上,那么重心就一定在直径上了。这样就简单了,找直径的中位点就是重心了。#include

2013-11-20 10:33:55 941

原创 ural1156. Two Rounds(二分染色+dfs)

#include #include #include #include #include using namespace std;#define N 105#define M 210struct node{ int to,next;} e[M];int head[N],esum;int n,m;inline void init(){ memset(hea

2013-11-18 14:52:01 1086

原创 bzoj2631 tree(伍一鸣)

LCT模板题坑死我了。首先会超int,这里就不知不觉wa了几次,之后还是WA,以为模板不行,改来改去还是WA。最后发现数据范围结点下标没有说明.....改成最大范围的结点下标后终于A了#include #include #include #include #include #include #include #include #include #include

2013-10-09 18:08:19 692

原创 URAL 1016 Cube on the Walk (SPFA+HASH)

很蛋疼的一题,一直在用广搜。先用了优先队列爆搜,发现不行,而且路径不好记录,然后开始用SPFA,然后对每个棋盘上的格子骰子的所有可能的状态HASH,果断样例OK了,结果WA了。一直不知道怎么回事,结果搜一下,发现这个棋盘不是我想象中的棋盘(从上到下8->1,从左到右a->h),就修改了Rotate过了.....#include #include #include #include

2013-09-25 16:28:53 764

原创 HDU4747 2013 ACM/ICPC Asia Regional Hangzhou Online Mex(线段树)

手算可以发现,当一组数列a[x],去掉a[0]后,那么之后新的数列数列的mex值将会发生变化对于第二组样例 1 0 2 0 1我们一步步算得到mex(i,j)(j>=i)0+2+3+3+3 = 11 //第一次可以得到mex(1,i)(1     1+1+1+3 = 6             0+1+3 = 4               1+2 = 3

2013-09-16 13:11:02 1062

原创 BZOJ 2243 树链剖分

学习了一下树链剖分。相关文章:http://blog.sina.com.cn/s/blog_7a1746820100wp67.html这题差不多算是模板题了吧。#include #include #include #include using namespace std;#define maxn 100005struct SegTree{ int l,r;

2013-09-14 10:03:56 731

原创 HDU 4115 Eliminate the Conflict (2-SAT)

取i表示为与当前Bi平局,i‘为与当前Bi胜利,完成2-SAT模型。对约束条件进行讨论。#include #include #include using namespace std;const int maxn=20002;const int maxm=40002;struct node{ int to,next;} e[maxm];int head[maxn

2013-09-13 11:14:21 610

原创 1588: [HNOI2002]营业额统计 (splay模板)

1588: [HNOI2002]营业额统计Time Limit: 5 Sec  Memory Limit: 162 MBSubmit: 5860  Solved: 1892[Submit][Status]Description营业额统计 Tiger最近被公司升任为营业部经理,他上任后接受公司交给的第一项任务便是统计并分析公司成立以来的营业情况。 Tiger拿出了公司的账本,

2013-09-05 11:41:05 688

原创 POJ 2761 (SBT模板)

#include #include #include #include using namespace std;#define maxn 100005#define maxm 50005int ls[maxn],rs[maxn],s[maxn],value[maxn];int node,root;void init(){ node=root=s[0]=0;}void

2013-08-12 11:59:08 902 1

原创 HDU 3397 Sequence operation (线段树)

思路:和POJ3225有点像,但是多了那么些操作。对于区间1的个数和翻转情况,这都是可以用懒惰标记解决的。对于连续1的个数,需要区间合并。具体还是看注释吧。#include #include #include #include using namespace std;#define maxn 100005struct SegTree{ int l,r; int o

2013-08-07 13:13:54 773

原创 HDU 4633 Who's Aunt Zhang (Polya定理)

设G是p个对象的一个置换群,用m种颜色涂染p个对象,则不同染色方案为:    其中G={g1,…gs}   c(gi )为置换gi的循环节数(i=1…s)#include #include #include #include #include using namespace std;#define MOD 10007int quickpow(int a,int b){

2013-08-02 15:41:43 1139

原创 POJ 1971 Parallelogram Counting (Hash)

Parallelogram CountingTime Limit: 5000MS Memory Limit: 65536KTotal Submissions: 5625 Accepted: 1890DescriptionThere are n distinct points in the plane, given by t

2013-08-01 10:41:13 823

原创 HDU 4630 No Pain No Game 树状数组

思路:查询一段区间内所有数字的两两最大的公约数。如果将区间内所有的数字的约数列举出来,那么其中出现过两次或以上的约数,最大的就是所求结果了。对查询按L从大到小排序,每次逆序遍历一个数字时,求出它的所有约数,用pos[s]记录约数s上一次出现的位置,那么当更新到现在这个位置的时候,如果pos非空,说明这时出现两次,将上一次的pos[s]更新到区间内,保证在L一定的情况下,查询R时,若L,R中有s,那

2013-07-31 11:00:28 708

原创 2013 Multi-University Training Contest 1 Vases and Flowers HDU 4614

题意:给你N个花瓶,M次操作,每次输入K,如果K为1,那么再输入A,F,表示从A+1编号的花瓶开始,只要有空瓶,就插入一支花,如果F只花插完或者没有空瓶可以插了,就停止,输出最左边插入的和最右边插入的花瓶编号,当然,如果一支没插,或者F=0时,输出"Can not put any one.";如果K为2,再输入A,B,这时,将编号从A到B的所有花瓶中的花清空,输出清空的花的数量。思路:明显的线

2013-07-26 19:12:38 657

原创 2013 Multi-University Training Contest 1 Warm up HDU 4612

思路:用tarjan算出无向连通图的连通分量的个数,那么桥的个数也就是连通分量个数减一,将在同个连通分量内的点进行缩点,最后将不同连通分量之间连边,求一遍新图(是一棵树)的最长路径(树的直径),显然,最长的直径加上头尾一条边形成一个环,可以减少相同长度的桥,也就是加上一条边后,原图能达到最少的桥数。#include #include #include #include using na

2013-07-26 19:02:12 659

原创 2013 Multi-University Training Contest 1 Occupy Cities HDU 4606

题意:给你N个城市,M个线段障碍,P个士兵,所有城市和士兵都是建立在平面坐标系上,士兵身上都有一个一定容量的资源背包,每次占领一个城市,中间消耗的资源为移动到那个星球之间的最短距离,当然不能穿过障碍。一个士兵占领一个城市后可以填满背包然后继续去占领其他城市。求最少背包容量为多少,使得最后p个士兵可以占领N个城市。题解:把平面上所有可以沿直线到达的点连边 (与所给的线段判相交),然后求一遍任意两

2013-07-24 16:13:51 738

原创 HDU 4351 (线段树)

#include #include #include using namespace std;#define MAX 100005int add[1025][11],res[1025][1025];int val[MAX];bool flag;struct node{ int lsta,rsta,sta; int root;} tree[MAX<<2];inl

2013-07-21 14:54:31 649

原创 HDU 4358 Boring counting (树状数组)

Boring countingTime Limit: 6000/3000 MS (Java/Others)    Memory Limit: 98304/98304 K (Java/Others)Total Submission(s): 1584    Accepted Submission(s): 440Problem DescriptionIn this pro

2013-07-20 10:52:26 696

原创 HDU 4305 Lightning (矩阵行列式求生成树个数+高斯逆元求行列式模板)

LightningTime Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 999    Accepted Submission(s): 333Problem DescriptionThere are N robots

2013-05-29 13:50:54 1004

原创 HDU 4307 Matrix (最小割)

MatrixTime Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 823    Accepted Submission(s): 210Problem DescriptionLet A be a 1*N matrix

2013-05-29 13:34:56 1093

原创 无源汇最大流 SGU 194 Reactor Cooling

194. Reactor Coolingtime limit per test: 1 sec.memory limit per test: 65536 KBinput: standardoutput: standardThe terrorist group leaded by a well known international terrorist

2013-05-23 09:50:18 753

原创 组合数学-母函数

1.整数划分类似于给你各种重量的砝码,问有多少种方法称出重量W,这里转化为给你1,2,3...n种数,问如何组合可以得到n。对于重量为1的砝码(用整数1):(x^0+x^1+x^2+...+x^n)对于重量为2的砝码(用整数2):(x^0+x^2+x^4+...+x^(2*k))(2*k对于重量为3的砝码(用整数3):(x^0+x^1+x^2+...+x^(3*k))(3*k

2013-04-29 16:24:03 856

转载 解Pell方程(java)

转载出处:http://blog.csdn.net/acdreamers/article/details/8529686题目出处:NEFU682Happiness Hotelimport java.math.BigInteger; import java.util.Scanner; public class Main { public static

2013-04-29 14:30:56 802

原创 Codeforces 300 C Beautiful Numbers (Locas)

思路:首先注意到对于长度为N的数字,他各个位数相加最多不会超过b*n,那么就可以枚举小于等于b*n中由a和b组成的good数gnum,设a*x+b*y=gnum,x和y为所求n位数中a的个数和b的个数,并且x+y=n这样,就可以解得x=(m-b*n)/(a-b).只要有正整数解,就说明存在n位数good数字使得他的各个位数之和等于gnum,也就是说由x个a核y个b组成的数字都是excellent数

2013-04-27 20:03:37 1456

原创 NEFU2013省赛集训6

E题题意:很明显,给你一个图,刚开始所有点都不经过,但是随着查询操作,点会一个个开放,然后问你每次查询的时候在当前点能通过的路径的情况下的多源最短路径问题。思路:Q很大有100000,那么每次更新操作做多只能O(n^2)了,那么可以考虑用FLOYD。对于每次的更新,每更新与加入点有关的边,就可以更新与这条边有关的最短多源路径了,然后查询x到y的距离的复杂度也就是O(1)了。最高复杂度O(N

2013-04-27 15:21:54 497

原创 NEFU CF 练习赛 45

http://acm.hust.edu.cn/vjudge/contest/view.action?cid=22283#overviewA题CF69A、B题CF69B没什么好说了,水题了。C题CF69C恶心的模拟.....每次某个玩家买了件装备的时候查看是否满足合成装备的条件,如果满足就更新一下背包,耐心一点就能调试出来。#include #include #inclu

2013-04-19 10:49:41 847

原创 codeforces Synchrophasotron (dfs)

比赛时深搜就是写不明白啊,太菜了......记录从源点出发的最大流量和最小流量,再记录到汇点的最大流量和最小流量然后枚举最小流量到最大流量,若当前流量满足到达n点条件,那么就输出minf和maxcost。#include #include #include using namespace std;struct node{ int low,high,cost;} ma

2013-04-18 10:02:24 704

原创 POJ 1740 (博弈)

题意:n堆石子,每次每个人至少从其中一堆移走至少一个石子,然后可以选择该堆中任意数量的石子分配到其它还有石子的堆。思路:可以看出当你碰到(x,x)成偶堆时,你必输,因为不管你怎么取和移动,对方只要对另一对偶堆进行相同操作,直到最后变成(1,1),此时显然输了。这样只要你是m对成偶数堆,那么就是必输态,相反的,只要不是必输态那么就是必胜态,也就是只要不是完全对偶的堆,都可以经过一次操作将它变成对

2013-04-17 20:11:03 859

原创 HDU 1536 (博弈SG)

直接套模板的水题.....#include #include #include #include using namespace std;int k,fibo[100],f[10001];//k为取数规则的个数int mex1(int p){ int i,t; bool g[101]= {0}; for(i=0; i<k; i++) //注

2013-04-17 09:51:35 557

转载 SG函数(HDU1848)

#include #include #include #include using namespace std;int k,fibo[100],f[10001];int mex1(int p){ int i,t; bool g[101]= {0}; for(i=0; i<k; i++) //注意 i从0开始,别动i {

2013-04-17 09:33:44 680

原创 ZOJ 3686 A Simple Tree Problem (线段树)

题意类似于POJ3321,但是这里每次操作的时候更新了子树中的所有节点值,而且每次查询需要进行延迟标记,所以如果跟POJ3321一样用树状数组不适合,这里用线段树来写,开始先dfs一边用时间戳进行节点标记。#include #include #include using namespace std;#define MAX 100001#define lson (rt<<1)#d

2013-04-16 17:06:03 694

原创 UVALive 5026 (树的重心和直径)

题目链接:https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=3027题意:给你N个点,N-1条边,组成一棵树,问从这棵树中任意取出一条边重新连接,并且使得连接后的还是一棵树(保持联通),要使最后重新组成的树的直径最小的那棵树的直径。树的

2013-04-16 15:24:36 972

原创 UVALive 5025 (dfs)

题目链接:https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=3026题意:给你23个人的球员信心,还有组合效果,问如何取球员使得最后的效果最好;思路:直接深搜可以过,这里需要注意可能为负值,还有限定的需要4个d,4个m,2个s,1个g。

2013-04-16 15:12:12 672

原创 POJ 3678 Katu Puzzle (2-SAT)

题意:就是解关于AND,OR,XOR的多元方程,有解输出YES,无解输出NO思路:每个Xi有0和1的取值,对于AND之后c=1,如果a取0自身是矛盾边,a到a'连边,如果a取1,那么b必须1,反之b亦然,c=0时,a取1时,b必须取0,反之亦然;对于OR之后c=1,如果a取0,那么b必须取1,c=0时,a取0时,b必须取0,a取1时自身矛盾,a到a'连边,b同理;对于XOR之后c=1,如果a取

2013-04-10 16:28:28 597

原创 POJ 3207 Ikki's Story IV - Panda's Trick (2-SAT)

题意:给一个圈,上面有n个点,0~n-1,然后再给你m对点,之间连边,可以连在圈内也可以连载圈外,问最后是否能将这m条边都连接,并且之间互不相交思路:将每条边看成一个点,若两条边可能相交,那么,一个连圈内,一个连圈外,将每个点分点成a,a',表示连载圈外和圈内,建立2-SAT模型即可。注意两条直线的相交判断。#include #include #include using names

2013-04-10 15:33:22 571

原创 HDU 1824 Let's go home (2-SAT)

思路:用op数组记录队员i的对立编号,如op[0]=1,op[1]=op[2]=0;,然后用2-SAT来判断#include #include #include using namespace std;const int maxn=3002;const int maxm=12002;int n,m,s;struct node{ int to,next;} e[ma

2013-04-09 15:42:08 657

原创 HDU 3062 Party (2-SAT)

题意:给你N对夫妻,从夫妻之间不会矛盾,但非夫妻可能产生矛盾,问能否从每对夫妻之中选出一个,这N个人互不矛盾。思路:很裸的2-SAT,今天也是第一次接触,还不是很明白,打算刷下题再了解一下#include #include #include using namespace std;const int maxn=2002;const int maxm=2000002;int

2013-04-09 14:16:13 585

原创 NEFU 2013省赛训练三

http://acm.nefu.edu.cn/JudgeOnline/contestlist.php?contest_id=93A题:给你一棵树,有那么一个定义,对于每个节点A,如果以该节点为父节点的子树中所有节点权值都为素数,并且小于A的节点值,并且A的节点值也为素数,那么称A为素数节点,求这棵树中素数节点的总数。思路:可以算是树形DP吧,dfs深搜所有节点,并记录当前父节点下子树中

2013-04-08 15:43:15 592

原创 HDU 4514 湫湫系列故事——设计风景线 (判环+求最大树直径)

思路:并查集判环,然后bfs求每课树的直径。有个定理,对于一棵树,求它的直径,那么先任意找一点,再求到这个点最远的点为v,然后求到v最远的点的距离就是树的直径。#include #include #include #include using namespace std;const int maxn=100005;const int maxm=2000005;int pre[ma

2013-03-29 17:42:51 850

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除