自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

围巾的ACM博客

刚毕业~

  • 博客(92)
  • 收藏
  • 关注

原创 poj2421Constructing Roads(最小生成树)

思路:一些已经连好的边添加一条权值为0的路,然后就是上模板了,又SB忘记init()#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;#

2016-01-31 23:16:29 735

原创 poj1287 Networking

思路:最小生成树模板题#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;#define maxn 1000#define LL lon

2016-01-31 22:57:16 283

原创 poj1251 Jungle Roads

思路:模板题..由于SB把初始化写成了并查集的初始化找了好久错...#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;#define m

2016-01-31 22:25:02 283

原创 hdu1233 还是畅通工程

思路:模板题#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;#define maxn 110#define LL long long

2016-01-31 22:09:35 310

原创 HDU 1875 畅通工程再续(最小生成树)

思路:模板题#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;#define maxn 110#define LL long long

2016-01-31 20:49:04 290

原创 poj1984 Navigation Nightmare(并查集)

思路:记录两个点之间x方向和y方向的相对距离,用并查集维护。#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;#define m

2016-01-31 17:35:05 474

原创 poj1182 食物链(经典并查集)

题意:中文题思路;最详细的题解#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;#define maxn 50000+10#def

2016-01-31 17:06:16 324

原创 uva1329 Corporative Network(并查集:路径压缩)

题意:初始时有n个点(编号1到n),每个点都没有父节点,然后依次执行下面两条命令:        I u v :把节点u的父亲设置为v,并且设u节点到v的距离为|u-v|%1000,输入保证执行I命令的时候,u没有父节点。        E u:查询u节点到根节点的距离。        输入:首先是T,表示实例个数。每个实例第一行是n(5        输出:对于每

2016-01-31 16:10:54 327

原创 poj1733 Parity game(并查集)

题意:有一个长度已知的01串,给出[l,r]这个区间中的1是奇数个还是偶数个,给出一系列语句问前几个是正确的思路:一类经典的并查集题目,经典模型就是将[l,r]这个区间化为(l-1,r],那么1的个数就可以表示为sum[r]-sum[l-1],也就确定了奇偶性,我们可以用r[]数组表示这个端点到它的根节点的1的奇偶(这个区间就是(i,root(i)](0代表偶,1代表奇)  对于每个输

2016-01-31 15:21:25 2793 2

原创 zoj3261Connections in Galaxy War(并查集)

题意:给出一些点,每个点有权值,然后有一些边,相连。无向的。然后有一些操作query a.表示从a出发的能到达的所有点权值最大的点的编号(相同取编号最小,而且权值要比自己大)destory a,b 表示删除连接a,b的边思路:一开始就按题目写...写着写着发现不对劲啊..好像难搞...然后搜了一下,思路很巧妙,正难则反的思路,先把操作,图都保存下来,然后从后往前查询,根节点

2016-01-31 10:17:35 533

原创 hdu3038How Many Answers Are Wrong(并查集)

题意:给出一些区间[l,r]的和为S,问有多少个是矛盾的思路:对给出的区间[l,r]将左边减一变成(l-1,r]合并,把数值小的当做根节点更新即可,有一点不懂的是只会用递归来更新,用while循环一直wa...#include #include #include #include #include #include #include #include #includ

2016-01-31 09:50:45 648

原创 BestCoder Round #70 Jam's store(网络流)

题解:一道经典的费用流的构图,我们想想,这个点排在另一个点后面的话,只是被另一个点影响了罢了。那么这个构图就巧妙了,因为N不大,所以我们可以把修电脑的人都拆成NN个点,每个点表示是倒数第几个顾客修的。那大家试想一下,比如说我第一个修电脑的,我现在是倒数第二个来找这个人,那么我只影响我后面的一个和自己,所以的话修一条费用为Tij*2Tij∗2,流量为11的边流过去就好了。可能还有不明白的自己好好理一

2016-01-30 23:08:07 384

原创 BestCoder Round #70 1002 Jam's balance(DP)

题意:见题目思路:这题比赛的时候做不出来...赛后看了下题解,没有想到是01背包的思想。如果全部砝码放在右边那么最重可以有2000个重量,由于左右都可以放,所以我们开dp[25][4005]的数组,将2000作为平衡点,转移方程见代码#include#include #include #include #include #include #include #inclu

2016-01-30 22:57:59 428

原创 BestCoder Round #70 1001 Jam's math problem

思路:a,b,c都是10^9,直接相乘会爆int,直接判sqrt(b^2-4ac)是不是为大于等于0的整数即可#include #include #include #include #include #include #include #include #include #include #include #include #include using nam

2016-01-30 22:18:04 380

原创 poj2492 A Bug's Life(并查集)

题意:有n个虫子,人们认为只有性别不同的时候才会发生性关系,现在给出m组虫子发生了关系,问是否存在同性恋(这题目...真变态)思路:并查集,将性别相同的划分在一个集合,不同的划分在另一个#include #include #include #include #include #include #include #include #include #include

2016-01-30 18:28:09 692

原创 poj1456 Supermarket(贪心)

题意:有N件商品,分别给出商品的价值和销售的最后期限,只要在最后日期之前销售处,就能得到相应的利润,并且销售该商品需要1天时间。问销售的最大利润。思路:贪心,将商品按最大价值排序,找到销售的最大期限,如果它的期限没有被占用,就在该天销售,如果占用,则从它的前一天开始向前查找有没有空闲的日期,如果有则占用。这样就可以得到最大销售量。#include#include#include

2016-01-30 16:41:55 313

原创 poj1308

题意:判断一个图是否为树思路:满足两个条件,只有一个根,非根节点入度只能为1#include #include #include #include #include using namespace std;const int maxn=10000;int father[maxn];//父节点int into[maxn];//入度int flag[maxn];//

2016-01-30 16:25:05 293

原创 poj1611The Suspects(并查集)

题意:中文题..思路:简单并查集..见代码#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;#define maxn 30005#

2016-01-30 13:33:05 295

原创 poj2236Wireless Network(并查集)

题意:一张图上分布着n台坏了的电脑,并知道它们的坐标。两台修好的电脑如果距离思路:简单并查集..#include #include #include #include #include #include #include #include #include #include #include #include #include using namespac

2016-01-30 11:36:38 1578 2

原创 hdu1272小希的迷宫 (并查集应用)

题意:判断一个图是否为连通无环图思路:判断是否为连通无环图          1,无环,判断输入边的两个端点,如果它们有同一个父节点,则证明有环          2,连通,整个图只有一个集合#include #include #include #include #include #include #include #include #include #i

2016-01-29 22:04:01 263

原创 hdu1213How Many Tables (并查集裸题)

思路:不说了..模板题#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;#define maxn 100000#define LL l

2016-01-29 21:34:16 406

原创 Codeforces 598E:Chocolate Bar(DP)

题意:一个n*m的巧克力,你想吃k个单元格的巧克力,每一次切都有切的那条边的长度平方的代价,问最小代价思路:明显的DP,设dp[i][j][k]为在i*j大的巧克力中吃k的最小代价,那么直接预处理枚举巧克力的长,宽,k,切的方式,切的位置..见代码....#include #include #include #include #include #include #pra

2016-01-29 18:06:52 1042

原创 uva11865 Stream My Contest (朱刘算法+二分)

题意:有n台机器(编号为0—n-1,其中机器0是服务器),m条网线(每条网线相当于一条有向边,有相应的带宽和代价),c的钱,给定c,求用m条网线搭建一个网路,使得每台机器都可以从服务器接收到信息,且带宽的最小值达到最大思路:朱刘算法模板+二分宽带#include #include #include #include using namespace std;typedef

2016-01-29 17:48:33 323

原创 uva11882Biggest Number(DFS + 剪枝)

题意:给一个矩阵,里面有#和数字,问你一笔画能得到的最大数字是多少思路:我一开始的思路是先把#去掉再建一个新图,然后就相当于在这个图中找哈密顿路,给边大到小排序,枚举大的边求哈密顿路,如果找到就一定是最大的了,如果找不到就去掉一个小的顶点继续找哈密顿路.....YY了许久发现复杂度好高...而且程序不会写....gg,后来搜了一下题解发现了一个剪枝,就是如果答案长度和格子数一样的时候,如果第一

2016-01-29 17:39:21 510

原创 URAL1658 Sum of Digits(DP)

题意:有一个不多于100位的数字,满足各位之和为S1,各位平方之和为S2,求满足该条件的最小数字思路:首先要理解,S1#include #include #include #include #include #include #include #include #include #include #include #include #include usi

2016-01-29 13:52:39 823

原创 poj2349Arctic Network (最小生成树运用)

题意:看半个小时的题...大概就是说有n个科研站, 要把这些站用卫星或者无线电连接起来,使得任意两个科研站都能直接或者间接相连。如果任意两个都有安装卫星设备的,都可以直接通过卫星通信,不管它们距离有多远。 而安装有无线电设备的两个站,距离不能超过D。 D越长费用越多。现在有s个卫星设备可以安装,还有足够多的无线电设备,求一个方案,使得费用D最少(D取决与所有用无线电通信的花费最大的那条路径

2016-01-29 11:30:52 354

原创 uva11183 Teen Girl Squad(最小树形图朱刘算法)

思路:朱刘算法模板题...#include #include const int MAXNODE = 1005;const int MAXEDGE = 40005;typedef int Type;const Type INF = 0x3f3f3f3f;struct Edge { int u, v; Type dist; Edge() {} Edge(int

2016-01-28 23:04:02 522

原创 hdu3986Harry Potter and the Final Battle(最短路+枚举)

题意:给一个无向图,问任意删除一条边,求点1到点n的最短路径的最长长度题解:显然删除的边只能是最短路径上的边,所以只需要记录最短路径上的边,然后枚举删除每一条,求最大值即可#include #include #include #include #include #include #include #include #include #include #inclu

2016-01-28 21:40:11 426

原创 uva11374 Airport Express(最短路+枚举)

题意:去机场有经济线和商业线这两种火车可以选择,现在你有一张商业线的火车票,可以坐一站,其余时候只能坐经济线,问去机场的最快路线,并且打印路径思路:我们假设从a到b坐的是商业线,那么最短时间就是从起点出发到a的最短路径+a到b的时间+b到终点的最短路径,首先对起点和终点分别跑一遍最短路,然后枚举每一点,维护ans最少,路径递归输出即可Trick:这个题输出格式真的是要醉了..两个样例之间输

2016-01-28 20:59:58 411

原创 Codeforces 144D Missile Silos(SPFA最短路)

题意:给定一个图,可以在边和点上设立发射井,其中发射井到首都的距离必须等于L,问可以建多少个发射井思路:建图然后跑最短路,如果发射井在边上的话,画个图可以知道限制的条件(利用三角不等式),如果发射井在点上的话只需要判是否等于L即可,见代码#include #include #include #include #include #include #includ

2016-01-28 20:09:59 570

原创 Codeforces 449B Jzzhu and Cities(最短路)

题意:一个城市,有m条道路,还有k条铁路(铁路都与点1相连),问在不改变点1到各个点的最短路的前提下最多可以删除多少条铁路思路:将道路和铁路一起建在同一个图中,跑一遍最短路并记录每个点的入度,接下来有两种情况可以判断可以删除这条铁路。1,如果最短路比铁路到点1的距离短,那毫无疑问可以删除2,如果最短路和铁路到点1的距离相同,那么如果入度大于1的话,说明可以通过走别的点到达,不需要铁路所

2016-01-28 17:47:26 1759

原创 uva10986Sending email (SPFA)

题意:给定一个起点和终点,问最短路径思路:最短路径测试模板题...#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;#define

2016-01-28 16:53:17 957

原创 Codeforces 598D Igor In the Museum (DFS)

题目:给定一个n*m的地图,有k次查询。每次查询,询问位置(x, y)周围有多少个*思路:k的范围有点大,如果对每一次查询都DFS一次的话肯定超时,所以输入地图后直接暴力先DFS每一个点周围的*的数量记录下来,对每次询问直接输出即可#include #include #include #include #include #include #include #inc

2016-01-28 16:10:01 1183

原创 Coderforce 598A Tricky Sum (数学)

题意:求数字之和,但是要减去2的倍数思路:直接求...#include#include #include#include#include#includeusing namespace std;int main (){ long long sum,n,t,x; int i; scanf("%lld",&t); while(t--) {

2016-01-28 15:20:00 912

原创 hdu5366 The mook jong (DP)

题意:在1*n的格子上放木人,两个木人之间间隔至少为2,问至少放个一个木人的情况有几种思路:算是经典DP了吧..DP[i]表示长度为i的方法数那么对于每一个位置有两种决策:1,如果不在第i个位置放,那么有DP[i - 1]种方法;2,如果在i这个位置放,那么有DP[i - 3]  +1种方法,多了一个只在这个位置放的情况;所以DP[i] = DP[i

2016-01-28 15:00:15 310

原创 hdu2645 find the nearest station(BFS)

题意:给一个图你,问图中每一个0和最近的1的距离思路:直接暴力BFS...#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;#def

2016-01-28 14:01:44 483

原创 hdu 2822(BFS+优先队列)

题意:有一只小狗要去找另一只小狗,两只小狗的坐标都知道,地图里有两种元素,房子(X)还有草地(.),如果小狗经过房子,则不用花时间,如果经过的是草地,时间+1,最后算出小狗到达目标的时候所花费的最小时间。思路:因为每个点的权值不一样,所以不能简单的BFS,要用优先队列,时间少的先出队即可#include #include #include #include #i

2016-01-28 13:30:08 866

原创 poj3169Layout (差分约束)

题意及思路不多说,膜拜大神的思路解释:点击打开链接#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;#define maxn

2016-01-26 23:48:35 1367 1

原创 poj2502 SubWay

题意:首先给你两个坐标,一个是你家里的坐标,一个是你学校的坐标,然后接下来有若干条地铁线,一行为一条地铁线,每条地铁线上有若干个站点,给出每个站点的坐标,这个距离的单位是米,现在告诉你走路是10km/h,做地铁的话是40km/h,问你从家里到学校所花费的最短时间(分钟)思路:首先先把单位统一为m/min,因为地铁给的距离是米,并且输出的答案为分钟数,10km/h=10000/60 (m/min

2016-01-26 23:07:47 511

原创 poj1062 昂贵的聘礼 (最短路)

题意:中文题不解释...思路:建图,每个物品看成一个点,酋长的允诺也看作一个物品, 如果一个物品加上金币可以交换另一个物品,则这两个点之间有边,权值为替代的金币数,求第一个点到所有点的最短路。因为有等级限制,所以直接暴力枚举每个点作为最低等级的情况求一次最短路,然后取最小 trick:有一点需要注意:酋长的等级不一定是最高的 #include #include

2016-01-26 22:10:59 252

空空如也

空空如也

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

TA关注的人

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