- 博客(17)
- 收藏
- 关注
原创 BUAA 晴天小猪爱61
LimitTime Limit : 2 sMemory Limit : 131072 KBDescription晴天小猪是一个正儿八经的人。他听说昂神大二就那么神了,真是太仰慕了。" style="margin:0px; padding:0px; border:0px none">他听说昂神的id是Sd0061,所以他觉得含有61的的数字最喜欢了!小猪觉得觉
2013-12-10 02:18:10
1313
原创 Erdos Numbers
题目大意:给出P个栏目每个栏目分别由几个作者一起出版,输入的方式为:作者名1,作者姓1.作者名2,作者姓2 ……作者名n,作者姓n每个栏目的作者之间有关系给出N个询问每个询问输入的为作者名,作者姓。问通过几层关系,能找到“Erdos, P.”这个人,若能查到则输出“作者名,作者姓:(关系数目)”,若不能查到,则输出“作者名,作者姓: infinity\n”题目思
2013-12-06 12:24:30
1223
原创 Atlantis
题目大意:给出N个矩阵,矩阵会重叠,求矩阵围成的面积SUCH AS:黑色部分就代表所求的面积。题目思路:线段树扫面线,画个图,我们可以把矩阵变成这样一个图形按照X轴进行排序,从左到右扫描,将各个不同颜色的长方形进行想家就可以得到答案#include #include #include #include using namespace std;
2013-12-05 11:31:44
612
原创 POJ 3905
题目大意给出n个人,m种情况有4种选择输入的方式+i +j:两个人中至少选择一个人+i -j:至少满足选择i或者不选择j的其中一个-i +j:至少满足不选择i或者选择j的其中一个-i -j:至多能选择i或者j的其中一个题目解法直接用2-SAT简单建图,套用模板直接干就OK//#pragma comment(linker,"/STACK:102400000
2013-11-20 12:05:24
766
原创 POJ 2060 Taxi Cab Scheme
题目大意:出租车公司有n个预约, 每个预约有时间和地点, 地点分布在二维整数坐标系上, 地点之间的行驶时间为两点间的曼哈顿距离(|x1 - x2| + |y1 - y2|)。一辆车可以在运完一个乘客后运另一个乘客, 条件是此车要在预约开始前一分钟之前到达出发地, 问最少需要几辆车搞定所有预约。#include #include #include #include usi
2013-11-19 16:15:40
749
原创 POJ 1330 LCA入门题(Tarjan)
#include #include #include #include using namespace std;#define N 100010#define bug(a) cout<<a<<"******"<<endl;int ok;int fa[N],node[N],vis[N],anc[N],ans;struct node{ int to; int next;}e
2013-10-20 11:50:29
574
原创 4738 Caocao's Bridges (Tarjan求割边)
题目大意:给出一幅图,然后每条边上都有一个权值,权值代表需要多少兵才可以炸断桥,求用最少的兵力使连通图变得不连通。题目思路:其实这题。。很简单,就是有两个坑。(1)就是某个边权值为0的时候是要派出1个兵去炸的(2)他会给出不连通的图,所以当Tarjan进行了两次以上的时候便输出0#include#include#includeusing namespace std
2013-09-17 16:18:10
442
原创 HDU 4739
题目大意:找4个点能构成正方形,每次找到后去除4个点再找下一个正方形。求能构成最多正方形数量有几个点题目思路:暴力DFS。#include#include#includeusing namespace std;int vis[200][200];int ans,n;struct node{ int x,y;}p[200];int dfs(int u)
2013-09-17 15:59:49
495
原创 HDOJ 4677 Query on Graph
题目大意:给出一幅图,然后给出一段区间,求这段区间在这幅图中的连通块的个数题目思路:并查集+分块算法#include#include#include#include#include#includeusing namespace std;#define N 30030vectoredge[N];int ans[N];int Lfa[N],vis[N],Rfa[N
2013-09-11 10:28:27
607
原创 POJ3667 Hotel(线段树)
题目大意:给出有几间房,然后度假的人要来住房,度假的人假设有N个人,那么N个人必须住的连在一起,当能满足条件时候,输出可以入住的最左边的房间题目思路:线段树区间合并#include #include #include using namespace std;#define N 50010#define L(a) (a<<1)#define R(a) ((a<<1)|1)
2013-09-07 22:13:44
528
原创 POJ Mayor's posters (线段树+离散化处理)
题目大意:在墙壁上贴广告,广告的版面有大有小,并且贴广告有先后之分,后面贴的广告会覆盖前面的广告。输入的测试用例解释:第一行为T组case第二行为有N张海报后面N行,每行两个数字,代表海报的宽度从x-y,海报高度都一样所以可以忽略不计。输出:露出来的海报有多少个#include#include#include#includeusing namespace
2013-08-30 00:06:48
512
原创 POJ 3625 Building Roads(Prim水题)
。很水,不说话了,直接睇代码吧#include#include#include#include#includeusing namespace std;#define N 2010double x[N],y[N];double map[N][N],dist[N];bool vis[N];int n,m;double dis(double x,double y,double
2013-08-28 23:16:04
496
原创 POJ 3626 Mud Puddles(超简单BFS)
水题,直接BFS,什么都不说了#include#includeusing namespace std;#define N 1010int map[N][N];const int dir[4][2] = {{1,0},{-1,0},{0,1},{0,-1}};int ex,ey;class node{public: int x,y,step; void in(int _x
2013-08-28 14:29:24
638
原创 HDU 4354 Missile(树形DP)
题目大意:给出C个城市,这C个城市中每个都属于M个国家中的某个国家,然后敌人想炸毁K个国家的城市。然后特别的是,两个国家如果有关系那么只能摧毁其中一个,关系没有传递性关于输入的测试用例:首先,先输入一行T,代表有T组CASE 然后输入C,N,K,M C:代表有C座城市
2013-08-27 14:50:13
641
原创 POJ 1655 Balancing Act(简单树状DP)
题目大意:给出N个点,N-1条边,删除一个点后分成至少两棵子树,子树中点最多的那棵就称说它Balance输出:Balance最小的点,和删除该点后的Balance值思路:树形DP用presum来记录该点前的总点数目然后用sum来记录包括目前点的总的点数那么连在同一点的其他子树的点数目就为n-sum-1然后可得dp[u]={presum,n-sum-1};#inc
2013-08-26 15:24:56
606
原创 HDU 4699 Editor (双栈)
题目大意:模拟光标动作输入个N,代表有N个动作动作共有5个I x:代表在光标之后插入xD:删除在光标之前的元素L:将光标向左移动一位除非光标在最开头R:将光标向右移动一位除非光标在末尾Q k:代表求出max{S1,S2.......Sk}, Sk=1+2+....+k;思路:用双栈,一个用来记录光标左边元素记为L,一个用来记右边元素记为R,如果向左移则L出栈
2013-08-24 19:29:13
569
原创 HDU 4687 带花树
#include#include#include#includeusing namespace std;#define N 1010int n,m;int link[N],fa[N];int base[N];//属于哪朵花int q[N],inq[N];int g[N][N];int inflower[N];int vis[N];int head
2013-08-22 02:03:49
724
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅