自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

ZhouRush

不忘初心

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

原创 hdu 1143 递归

http://acm.hdu.edu.cn/showproblem.php?pid=1143题意:求用2*1的矩阵充满3*n的方格有多少种不同的排列方案。分析:看了网上的解析。其实递归就是找规律,测试数据如果多给几个谁都能a。刚开始的时候想画个3*3发现是x是奇数的话肯定不行,然后画3*4嗨,没画出来,脑子不够用。这就是数学不好的结果。http://blog.csdn.net/ma_non

2013-06-14 19:48:21 1169

原创 hdu 1385 最短路+输出字典序--好题

http://acm.hdu.edu.cn/showproblem.php?pid=1385题意:求起点到终点的最短路,注意点是有权值的。然后要按找字典序输出路径。分析:说实话这题卡了我好久,从数据没过到坑坑爹爹的把数据过了,再到改啊改一直wa,我已经很满足了因为我耐住了性子,其实我一点也不希望他ac,要不然太没劲了。好吧这题wa了我18次。关键的地方就是按照字典序输出,由于我以前是按照另

2013-06-14 19:48:19 519

原创 hdu 1598 并查集+贪心---其实就是kruskal的思想

http://acm.hdu.edu.cn/showproblem.php?pid=1598题意:中文的就不说了。分析:题目要求从起点到终点的最大值与最小值的差最小,第一感觉是floyd,但是要保存经过的每条边,这就卡住了。后来发现从起点到终点也可以用并查集做,想想从起点到终点肯定要属于同一个集合,这就行了。其实这题就是用的kruskal的思想。具体看代码。还有一个地方我觉得很奇怪为什

2013-06-14 19:48:17 535

原创 送给我最好的朋友---周辉哥

实在是做不出题,那就写写随笔,送给周辉哥。    这几天压力骤然感觉大了很多,特别是昨天一题也不会,擦。不会就想找人聊聊天。看到周辉哥在线就寒暄了几句。高考后一直没和你在qq上说过话,高考前就不怎么用qq。嘻嘻。今天算是鼓起很大勇气和你说了说。你现在在国防科技大学,而我在一个真不是很好的学校。还记得吗?以前暑假的时候一起奋斗的日子,那次是我考试进步最大的一次,30?什么概念,我居然年段前30,

2013-06-14 19:48:14 704

原创 hdu 1198 dfs||并查集求连通分量个数,关键建图

题意:有A~K共9种类型的地步,每耕田上方的沟渠是不合的(它们连接的出口不合)。然后由这些类型的田构成一个n*m大小的更大的田,因为相邻两个地步的沟渠可能可以相通(有接口),所以只要相通的那些地步只须要一个水源就可以了。求起码须要几许个水源。解析:可用bfs,dfs做,不过用并查集更便利点。 用并查集只须要断定一个田四周的四个田,若是有接口,那么就把这两个田归并成一棵树,最后断定几棵树

2013-06-14 19:48:10 581

原创 hdu 1161 kruskal求最小生成树注意建图

题意:求链接所有点的最短路径。分析:最小生成树,kruskal.嗨。居然wa了2次。受不了啊。View Code // I'm lanjiangzhou//C#include #include #include string.h>#include #include #include //C++#include #include #incl

2013-06-14 19:48:08 465

原创 心心感想

做人最重要的是真诚,我觉得我和11171228和cry_mas就是这样的,其实我和很多人都这样,只是我不爱说罢了,至于结果怎么样,随意呵呵。论实力我和cry_mas差距不是一点点,看cry_mas腾讯比赛的排名,我觉得这辈子都别想在acm超过他了,但为什么我这么弱,这么笨,他依旧细心教导,我觉得最重要的真心。我很荣幸能在你烦的时候,听听你的诉说,一个实力在wordfinal的大神,居然对我这么好,

2013-06-14 19:48:05 552

原创 POJ 3615 floyd 求任意起点终点的最短路

http://poj.org/problem?id=3615题意:求起点到终点的最短路,不存在则输出-1.这题居然tle两次,把floyd放在外面就行了。View Code // I'm lanjiangzhou//C#include #include #include string.h>#include #include #include //C+

2013-06-14 19:48:03 795

原创 POJ 3295 spfa判断是否存在负权回路

http://blog.sina.com.cn/s/blog_99ca2df50101jtk3.html这里前几天刚刚写过就不写了。题意:判断是否存在负权回路。用spfa.View Code //ac// I'm the Topcoder//C#include #include #include string.h>#include #includ

2013-06-14 19:48:01 567

原创 POJ2457 dijksta求最短路&&输出走过的路径

http://poj.org/problem?id=2457题意:求起点1到终点m的最短距离。这个可以spfa||dijkstra。这题关键的是要输出从1--m走过的路径。用path[]记录下,每一步的祖先,用shortest[]逆序输出即可。这题re了n次。到现在也不理解,为什么先if(dis[m]==INF){//为什么先判断就不会re.不明白 printf("-

2013-06-14 19:47:58 901

原创 POJ2394 dijksta||spfa求最短路

题意:求各个点到起点1的距离是否分析:dijkstra。求起点到各个点的最短距离和m判断一下就行了。坑爹的是我wa了13次。就是在一个下标出问题的,白白费了4个小时。不认真。就是下面的sum.原因自己分析。嗨,死在这里了。我把i放在coutnts[]里面了,原因还要说吗????View Code // I'm lanjiangzhou//C#include #inc

2013-06-14 19:47:56 580

原创 POJ1847 floyd求最短路径

http://poj.org/problem?id=1847题意:这题关键是题意理解了就会做了。大致题意:现在有一铁路网络,有n个交叉点,和一些开关。通过开关可以改变路线方向,使其能驶向其他交叉点。开关的初始状态已知,即(初始直接某两点直接相连)。A到B.问从出发点到目的地最少要动多少开关才能到达。分析:想想就会发现是最短路问题。假如要从1--3如果有直接连接的边则不要动开关,

2013-06-14 19:47:54 565

原创 POJ 1511 spfa求最短回路

http://poj.org/problem?id=1511题意:(图论147)。求从起点到各个点的最短回路。分析:用两次spfa就行了。第一次spfa是从出发点start到各个点,求一次最短距离,第二次spfa是从各个点反向求到出发点的最短距离。处理:第一次spfa只要保存正向边,第二次用反向边进行spfa就可以了。最后把两次求得的距离相加就是最短回路。View Code

2013-06-14 19:47:51 685

原创 fleury算法输出欧拉回路

1、定义:欧拉通路(回路):通过图(无向图或有向图)中所有边一次且仅一次行遍图中所有顶点的    通路(回路)称为欧拉通路(回路)。欧拉图与半欧拉图:具有欧拉回路的图称为欧拉图,具有欧拉通路而无欧拉回路的    图称为半欧拉图。桥:设无向图G=,若存在边集E的一个非空子集E1,使得p(G-E1)>p(G),而对    于E1的任意真子集E2,均有p(G-E2)=p(G),则

2013-06-14 19:47:49 4602

原创 POJ 1780 欧拉i回路判断&&输出欧拉回路

http://poj.org/problem?id=1780//题意:找到一个数子序列包含所有的n位数一次切仅一次。分析:首先要明白为什么选择一个好的数字序列,至多只需要按键10^n+n-1就可以打开保险箱了。n位数有10^种编码方案(即10^n组数),要使得一个数字序列包含这10^n组n位数,且序列的长度最短,唯一的可能是每组数出现一次切尽一次,且前一组数的后n-1位是后以数组的前n-1

2013-06-14 19:47:47 720

原创 acm和做人有关系?

搞了这么久,acm有时会让人丧失理智。acm需要的是静,耐得住性子,这一过程会磨灭很多个性,也正是这一过程,让人得到成长。而我在这一过程中似乎并没有成长,一心想的是能不能多切几道题,能不能再切几道题,完全失去了耐心,甚至不择手段,失去了一个真正acm本因有的血性,像师傅虽然在一个学院,却仍然可以进现场赛,差点就去wordfinal。我一直觉得他是我见过的最强大的acmer,可我觉得他给我的不仅仅是

2013-06-14 19:47:45 576

原创 POJ 1300 判断欧拉回路

题意:能否找到一条路径经过所有开着门的房间,并使得:1:通过门后立即把门关上,2:关上的门不在打开,3:最后回到你自己的房间(房间0),并且所有的门都已经关闭。题目已知这是连通图。分析:以房间为顶点,连接房间之间的门为边构造图。根据题意,输入文件的每个测试数据所构造的图都是连通的。本题实际上是判断一个图中是否存在欧拉回路或者欧拉通路。无向图存在欧拉回路的充要条件一个无向图存在欧拉回

2013-06-14 19:47:42 574

原创 POJ 2243 bfs

题意:求棋子从起点到终点的最小步数。分析:bfs。注意:用while(scanf("%s%s",str1,str2)!=EOF)会tle。这边2次tle后来改成while(cin>>str1>>str2)就过了。收获:bfs实在是弱,这题几乎是按照自己思路,一点一点敲出来的,不错。继续加油。(这题以前做过,当时是用数组模拟队列,是照别人做的。)View Code // I'

2013-06-14 19:47:40 493

原创 Arab and North African Region,2002(Snakes & ladders)

题意:游戏采用N*N的棋盘,方格数为1~~N^2.其实玩家位置在1,每次投一次骰子,问最少需要几次可以到大N*N这个格子。其中格子中有蛇和梯子,在蛇头则降至蛇尾,在梯子底部则升至梯子首部。分析:蛇和梯子占据哪些方格并不重要,只需要知道蛇和梯子的起始位置即可。在走了若干步之后,对于一个特定的格子只有两种状态:(1):在走了这些步数后存在一种方案使得玩家的位置位于此格(2):不存在这样

2013-06-14 19:47:38 613

原创 POJ 1562 dfs求连通分量的个数

题意:求连通分量的个数分析:直接用dfs,每次返回一次,sum++;View Code #include#include#includeusing namespace std;const int maxn = 110;char str[maxn][maxn];int xx,yy;int n,m;int sum;int dir[8][2]={{-1

2013-06-14 19:47:36 1076

原创 POJ 1979 简单dfs||bfs

//题意:求从@出发的连续的'.'的个数。分析:直接用dfs。感悟:我很水啊,这题敲了半天。加油啊,亲。View Code #include#include#includeusing namespace std;#define maxn 110int n,m;char str[maxn][maxn];int dir[4][2]={{0,1},{1,0

2013-06-14 19:47:33 665

原创 ZOJ2110 dfs+剪枝

//题意:一只小狗要从起点S到终点D且恰好在第t秒到达,问是否可能。分析:这题关键是剪枝。剪枝技巧来自http://blog.csdn.net/zxy_snow/article/details/6177892DFS。 之前一直TLE了,死活不会优化 = =。。就搜了下。 那个用距离判断的我也加了,还是TLE了 = =。。学到个这个,这一句很神奇。。。  if

2013-06-14 19:47:31 515

原创 POJ3026 bfs+prim

题意:来自神姐http://blog.csdn.net/lyy289065406/article/details/6645991在一个y行 x列的迷宫中,有可行走的通路空格’ ‘,不可行走的墙’#’,还有两种英文字母A和S,现在从S出发,要求用最短的路径L连接所有字母,输出这条路径L的总长度。 一格的长度为1,而且移动的方法只有上、下、左、右,所以在无任何墙的情况下(但“墙#”是必

2013-06-14 19:47:29 533

原创 POJ 1258 prim模版求最小生成树

题意:求连接所有村庄的最短路径。就是求最小生成树。分析:直接套用prim模版。 POJ 2421在这题上又该进了点。http://www.cnblogs.com/lanjiangzhou/archive/2013/03/25/2981491.html。其实都一样。View Code // I'm the Topcoder //C #include #include

2013-06-14 19:47:27 491

原创 POJ 1789 prim求最小生成树

以前写的报告,可以参考下http://blog.sina.com.cn/s/blog_99ca2df501019bkd.htmlView Code 1 // I'm the Topcoder 2 //C 3 #include 4 #include 5 #include string.h> 6 #include 7 #include

2013-06-14 19:47:24 517

原创 ZOJ 1586 prim算法求最小生成树

题意:建立QS网络的最小费用。分析:运用prim算法求解最小生成树关键:本题关键是建图。在构造有向网时,每条边的权值为两个QS的适配器的加个加上两个QS之间网线的加个。这样就可以解决问题了。简化:本题只需最小生成树的权值,不需要记录构造最小生成树时选择的边,因此可以将lowcost数组和nearvex数组合二为一。自己做法还是一起解决吧,省得记那么多。呵呵View Code

2013-06-14 19:47:22 473

原创 POJ2421 prim算法求最小生成树

题意:邻接村子里面所有的村庄,使得道路的总长度最小。分析:由于题意说会有已经通好道路的村庄。我们任然可以利用prim求解最小生成树,只要把已经通好道路的权值置为0,就行了。View Code 1 // I'm the Topcoder 2 //C 3 #include 4 #include 5 #include string.h> 6 #inc

2013-06-14 19:47:20 564

原创 POJ1287 || ZOJ1372 kruskal

题意:求连接所有地点是网线长度最短分析:kruskal。一开始数组开小了 导致re了几次,然后开大后有wa 了几次,郁闷的去取了快递,吃了饭。回来在检查发现parent[]这边又出问题 了。应该是for(int i=1;i            path[i]=-1;}而不是下标从0 到n-1.嗨。。。View Code 1 // I'm the Topco

2013-06-14 19:47:17 596

原创 POJ1251 || ZOJ1406 kruskal求最小生成树

题意:求连接所有村庄道路的最小费用。分析:kruskal算法,直接求最小生成树。注意:这题输入的时候是字母,所以要注意了。POJ如果用getchar()的话会wa。坑爹啊。还好我后来在ZOJ 上提交过了,在POJ discuss里发现说tle||re的注意了要用数组输入字母(呵呵,我的是WA),以后碰到这种还是直接用数组,省那么点空间干嘛。还有这题关键是建图,具体细则参看代码。这次代码有点

2013-06-14 19:47:15 533

原创 POJ 1861||ZOJ1542 kruskal求最小生成树(POJ秒杀啊)

题意:用所给的网线链接所有的路流器,使得最长的单根网线的长度在所有方案中是最小的。分析:本质还是求最小生成树。为了输出单根网线的长度在所有方案中是最小的以及输入p对顶点,需要在选择的时候记录下已选则 的网线的下标。zoj这题80ms,而uva 前面几次tle。后面人品好点干好1s。啊。秒杀啊。擦。View Code 1 // I'm the Topcoder 2 //

2013-06-14 19:47:13 552

原创 ZOJ1203 kruskal求最小生成树

题意:给定平面上的n个城市的位置,计算连接这n个城市所需路线长度总和的最小值分析:直接运用kruskal算法求解。这题关键是建图。好好感受下面建图的思想。一开始我还是想按照以前最短路径那样建图,发现cmp的时候就出问题了。嗨,自己弱爆了。View Code 1 // I'm the Topcoder 2 //C 3 #include 4 #include

2013-06-14 19:47:11 564

原创 ZOJ 1082 floyd

题意:求从经济人散布谣言到所有人需要的最短时间的最大值具体详解看我原来的解法http://blog.sina.com.cn/s/blog_99ca2df50101807p.htmlView Code 1 // I'm the Topcoder 2 //C 3 #include 4 #include 5 #include string.h> 6

2013-06-14 19:47:08 463

原创 ZOJ 2797 ||POJ 2472 floyd变形

记住一定要初始化dis[][],因为这边wa了几次。题意:求起点1到终点n不被抓的概率。也就是要是输出 的结果最大。只要把floyd状态方程改为*就行了。如下所示:dis[i][j]=max(dis[i][j],dis[i][k]*dis[k][j]).切记初始化dis[i][j]=0;要求最大则初始化为-INF 或者0.不能是INFView Code 1 // I

2013-06-14 19:47:06 844

原创 POJ 2253 floyd思想

题意:求两块石头之间的青蛙的距离,即:起点到终点所有路径中最大跳跃距离的最小值思路:可以用floyd来求解floyd变形为dis[i][j]=MIN(dis[i][j],MAX(dis[i][k],dis[k][j]));View Code 1 // I'm the Topcoder 2 //C 3 #include 4 #include 5 #

2013-06-14 19:47:04 454

原创 POJ 2263 floyd思想

http://poj.org/problem?id=2263题意:汽车的载重量没有限制,取决于道路的承载能力,求起点到终点所经过的路径不会超过道路的承载限制。分析:本题并不是求最短路径,而是求通过的能力最大的路,这种路可以称作最大容量路,可以用floyd算法的思想求解。设城市i到城市j的承载能力记为【i,j】,初始时K到M没有直接路径,因此k到M的承载重量为0。即【K,M】=0.加入中间结

2013-06-14 19:47:01 455

原创 poj2570||zoj1967 floyd思想

Fiber NetworkTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 2624 Accepted: 1203DescriptionSeveral startup companies have decided to build a better Intern

2013-06-14 19:46:59 434

原创 学习计划

静静地想想其实自己并不适合搞acm。  最后三个月弄算法,搞acm,然后我就真的要和她说再见了。你像我的女朋友一样。为你哭过,为你笑过,大学到现在一切都是围绕你生活。acm你夺去了我几乎所有的大学业余时间,甚至为你而逃课。无论什么时候我都不适合做佼佼者,我安于现状,特别是受到一点点表扬时,整个人就会特别得意。我觉得这真的不好,要是以前还小的时候,我觉得还行,现在长大了,我要明白什么?什么我要去

2013-06-14 19:46:57 503

原创 正式转战cnblogs。开始我新的代码生涯

加油。

2013-06-14 19:46:55 540

原创 poj 2291水题

http://poj.org/problem?id=2291线段树做累了来题水题Rotten RopesTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 4899 Accepted: 3184DescriptionSuppose we h

2013-06-06 18:55:47 1040

转载 线段树总结

出处:http://blog.csdn.net/shiqi_614/article/details/8228102#comments之前做了些线段树相关的题目,开学一段时间后,想着把它整理下,完成了大牛NotOnlySuccess的博文“完全版线段树”里的大部分题目,其博文地址Here,然后也加入了自己做过的一些题目。整理时,更新了之前的代码风格,不过旧的代码仍然保留着。

2013-06-04 20:43:33 1175

空空如也

空空如也

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

TA关注的人

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