2011年7月29日

摘要: Problem Description某省调查乡村交通状况,得到的统计表中列出了任意两村庄间的距离。省政府“畅通工程”的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可),并要求铺设的公路总长度为最小。请计算最小的公路总长度。Input测试输入包含若干测试用例。每个测试用例的第1行给出村庄数目N ( < 100 );随后的N(N-1)/2行对应村庄间的距离,每行给出一对正整数,分别是两个村庄的编号,以及此两村庄间的距离。为简单起见,村庄从1到N编号。当N为0时,输入结束,该用例不被处理。Output对每个测试用例,在1行里输出最小的公路总 阅读全文
posted @ 2011-07-29 10:53 Raffaello 阅读(374) 评论(0) 推荐(0)
 
摘要: Problem Description某省调查城镇交通状况,得到现有城镇道路统计表,表中列出了每条道路直接连通的城镇。省政府“畅通工程”的目标是使全省任何两个城镇间都可以实现交通(但不一定有直接的道路相连,只要互相间接通过道路可达即可)。问最少还需要建设多少条道路? Input测试输入包含若干测试用例。每个测试用例的第1行给出两个正整数,分别是城镇数目N ( < 1000 )和道路数目M;随后的M行对应M条道路,每行给出一对正整数,分别是该条道路直接连通的两个城镇的编号。为简单起见,城镇从1到N编号。 注意:两个城市之间可以有多条道路相通,也就是说3 31 21 22 1这种输入也是合法 阅读全文
posted @ 2011-07-29 10:53 Raffaello 阅读(259) 评论(0) 推荐(0)
 
摘要: 作家萧伯纳说:“有信心的人,可以化渺小为伟大,化平庸为神奇。”张海迪做到了,她说:“是颗流星,就要把光留给人间!”相比之下,莫名其妙的有种想哭的冲动。总喜欢这样安慰自己,人生如此短暂,索性随着性子去做些喜欢的事情,可是当真的习惯了这种安慰时,才突然发现自己并没有得到想象中的那份快乐与轻松,除了守着心中越发膨胀的空虚,竟是这样的不知所粗。不由得反问,曾几何时,我没有了斗志,忘记了自己也曾信誓旦旦的许下承诺。这才明白,原来安慰只是找一个可以继续懒散的借口,懒散了太久,麻木了太久,梦想都变成了海市蜃楼。想着想着,大一时刚入学的信誓旦旦抖落了身上的尘土,涌上心头。“以前我的天空是爸爸妈妈在支撑,今后爸 阅读全文
posted @ 2011-07-29 10:52 Raffaello 阅读(110) 评论(0) 推荐(0)
 
摘要: 一米阳光的温暖、灯红酒绿的繁华都市,钢筋与混凝土搭建的现代文明,冷漠与现实化腐蚀着原本纯真的心,连一米阳光的温暖都日渐成为一种奢求。你的心中是否也有过这样一种落寞在徘徊,请给我一米阳光,请给我一点温暖。------题记轻轻含着薄薄的粉色嘴唇,呆呆的站在刚刚结束的毕业典礼现场。大学四年的每一寸回忆如同泛滥的洪水一幕幕浮现在眼前,四肢麻木的近乎挪不动脚步。吴娜反问四年的时光自己究竟得到了什么,和付鑫三年多的海誓山盟地久天长最终还是抵不过最现实的一句好聚好散。仍然清晰地记得一天前,付鑫平淡的说,大学毕业了,我们志向不同没有选择了,必须各奔东西了,希望没有我的日子你可以一直幸福下去,平静的完全无视了. 阅读全文
posted @ 2011-07-29 10:52 Raffaello 阅读(176) 评论(0) 推荐(0)
 
摘要: 该算法可用于计算正权图上的单源最短路(SSSP),即从单个点源出发,到所有结点的最短路。(同时适用于有向图和无向图)memset(v,0,sizeof(v));//标记点是否找过;for(i=0;i<n;i++){ d[i]=(i==0?0:INF);//INF代表无穷}for(i=0;i<n;i++){ int x,m=INF; for(y=0;y<n;y++) if(v[y]==0&&d[y]<m) { m=d[x=y]; } v[x]=1; for(y=0;y<n;y++) { if(d[y]>d[x]+w[x][y]) d[y]=d[ 阅读全文
posted @ 2011-07-29 10:51 Raffaello 阅读(159) 评论(0) 推荐(0)
 
摘要: Problem DescriptionC++编程考试使用的实时提交系统,具有即时获得成绩排名的特点。它的功能是怎么实现的呢?我们做好了题目的解答,提交之后,要么“AC”,要么错误,不管怎样错法,总是给你记上一笔,表明你曾经有过一次错误提交,因而当你一旦提交该题“AC”后,就要与你算一算帐了,总共该题错误提交了几回。虽然你在题数上,大步地跃上了一个台阶,但是在耗时上要摊上你共花去的时间。特别是,曾经有过的错误提交,每次都要摊上一定的单位时间分。这样一来,你在做出的题数上,可能领先别人很多,但是,在做出同样题数的人群中,你可能会在耗时上处于排名的劣势。例如:某次考试一共8题(A,B,C,D,E,F 阅读全文
posted @ 2011-07-29 10:50 Raffaello 阅读(283) 评论(0) 推荐(0)
 
摘要: DescriptionOne cow from each ofNfarms (1 ≤N≤ 1000) conveniently numbered 1..Nis going to attend the big cow party to be held at farm #X(1 ≤X≤N). A total ofM(1 ≤M≤ 100,000) unidirectional (one-way roads connects pairs of farms; roadirequiresTi(1 ≤Ti≤ 100) units of time to traverse.Each cow must walk 阅读全文
posted @ 2011-07-29 10:50 Raffaello 阅读(230) 评论(0) 推荐(0)
 
摘要: DescriptionThere are so many different religions in the world today that it is difficult to keep track of them all. You are interested in finding out how many different religions students in your university believe in. You know that there are n students in your university (0 < n <= 50000). It 阅读全文
posted @ 2011-07-29 10:50 Raffaello 阅读(162) 评论(0) 推荐(0)
 
摘要: Problem DescriptionThe famous ACM (Advanced Computer Maker) Company has rented a floor of a building whose shape is in the following figure.The floor has 200 rooms each on the north side and south side along the corridor. Recently the Company made a plan to reform its system. The reform includes mov 阅读全文
posted @ 2011-07-29 10:49 Raffaello 阅读(212) 评论(0) 推荐(0)
 
摘要: DescriptionSevere acute respiratory syndrome (SARS), an atypical pneumonia of unknown aetiology, was recognized as a global threat in mid-March 2003. To minimize transmission to others, the best strategy is to separate the suspects from others. In the Not-Spreading-Your-Sickness University (NSYSU), 阅读全文
posted @ 2011-07-29 10:49 Raffaello 阅读(122) 评论(0) 推荐(0)
 
摘要: Problem DescriptionHere is a famous story in Chinese history."That was about 2300 years ago. General Tian Ji was a high official in the country Qi. He likes to play horse racing with the king and others.""Both of Tian and the king have three horses in different classes, namely, regula 阅读全文
posted @ 2011-07-29 10:49 Raffaello 阅读(187) 评论(0) 推荐(0)
 
摘要: 三个函数void Make_set(int x){ int i; for(i=0;i<x;i++) { father[i]=i; num[i]=1; }}int Find_set(int x){ if(father[x]!=x) { father[x]=Find_set(father[x]); } return father[x];}void Union(int x,int y){ int a,b; a=Find_set(x); b=Find_set(y); if(a==b) return; if(num[a]>num[b]) { father[b]=a; num[a]+=num[ 阅读全文
posted @ 2011-07-29 10:49 Raffaello 阅读(111) 评论(0) 推荐(0)
 
摘要: Problem DescriptionCrixalis - Sand King used to be a giant scorpion(蝎子) in the deserts of Kalimdor. Though he's a guardian of Lich King now, he keeps the living habit of a scorpion like living underground and digging holes.Someday Crixalis decides to move to another nice place and build a new ho 阅读全文
posted @ 2011-07-29 10:48 Raffaello 阅读(162) 评论(0) 推荐(0)
 
摘要: Problem DescriptionIgnatius has just come back school from the 30th ACM/ICPC. Now he has a lot of homework to do. Every teacher gives him a deadline of handing in the homework. If Ignatius hands in the homework after the deadline, the teacher will reduce his score of the final test. And now we assum 阅读全文
posted @ 2011-07-29 10:47 Raffaello 阅读(155) 评论(0) 推荐(0)
 
摘要: 并查集学习:l 并查集:(union-find sets)一种简单的用途广泛的集合. 并查集是若干个不相交集合,能够实现较快的合并和判断元素所在集合的操作,应用很多,如其求无向图的连通分量个数等。最完美的应用当属:实现Kruskar算法求最小生成树。l 并查集的精髓(即它的三种操作,结合实现代码模板进行理解):1、Make_Set(x) 把每一个元素初始化为一个集合初始化后每一个元素的父亲节点是它本身,每一个元素的祖先节点也是它本身(也可以根据情况而变)。2、Find_Set(x) 查找一个元素所在的集合查找一个元素所在的集合,其精髓是找到这个元素所在集合的祖先!这个才是并查集判断和合并的最终 阅读全文
posted @ 2011-07-29 10:47 Raffaello 阅读(131) 评论(0) 推荐(0)
 
摘要: 说实在的,不喜欢这个名字,太过伤感。可是却再想不出更贴切的标题。翻阅人人早已成为冷落太久的习惯,从未想过又一个学期的落幕后,这篇日志仍会给我带来不减当初的内心震撼,不,更准确的说应该是不甘.....大一下学期以同样速度的消逝,承认这学期学到了些东西,但是还是有太多的遗憾......给自己一个看似不可能的梦想,一定会成为奋斗的发动机.....在这里,在此时,种下这颗叫做梦想的种子,我期待,它会在未来,在我的世界里上演! 阅读全文
posted @ 2011-07-29 10:46 Raffaello 阅读(119) 评论(0) 推荐(0)
 
摘要: 描述一个数的序列bi,当b1 < b2 < ... < bS的时候,我们称这个序列是上升的。对于给定的一个序列(a1, a2, ..., aN),我们可以得到一些上升的子序列(ai1, ai2, ..., aiK),这里1 <= i1 < i2 < ... < iK <= N。比如,对于序列(1, 7, 3, 5, 9, 4, 8),有它的一些上升子序列,如(1, 7), (3, 4, 8)等等。这些子序列中最长的长度是4,比如子序列(1, 3, 5, 8).你的任务,就是对于给定的序列,求出最长上升子序列的长度。输入输入的第一行是序列的长度N 阅读全文
posted @ 2011-07-29 10:40 Raffaello 阅读(278) 评论(0) 推荐(0)
 
摘要: 时间限制: 1000ms 内存限制: 65536kB描述73 88 1 02 7 4 44 5 2 6 5(图1)图1给出了一个数字三角形。从三角形的顶部到底部有很多条不同的路径。对于每条路径,把路径上面的数加起来可以得到一个和你的任务就是找到最大的和。注意:路径上的每一步只能从一个数走到下一层上和它最近的左边的那个数或者右边的那个数。输入输入的是一行是一个整数N (1 < N <= 100),给出三角形的行数。下面的N行给出数字三角形。数字三角形上的数的范围都在0和100之间。输出输出最大的和。样例输入57 3 8 8 1 0 2 7 4 4 4 5 2 6 5样例输出30#in 阅读全文
posted @ 2011-07-29 10:39 Raffaello 阅读(189) 评论(0) 推荐(0)
 
摘要: 毫无悬念的,院队第一次比赛我们是最后一名....唯一一个女队,大家都觉得我们不行,我承认,我们现在确实很差劲,算法不懂一个,代码基础也仅有那可怜的少许。但是我们一定会变强~~supergirl go! 阅读全文
posted @ 2011-07-29 10:36 Raffaello 阅读(80) 评论(0) 推荐(0)
 
摘要: 额~额·~ 今天开始学习动态规划~~虽然很难,但是希望可以坚持~很开心有一个坚实后盾~~ 文怡,加油~~ 阅读全文
posted @ 2011-07-29 10:34 Raffaello 阅读(89) 评论(0) 推荐(0)
 
摘要: DescriptionBusinesses like to have memorable telephone numbers. One way to make a telephone number memorable is to have it spell a memorable word or phrase. For example, you can call the University of Waterloo by dialing the memorable TUT-GLOP. Sometimes only part of the number is used to spell a wo 阅读全文
posted @ 2011-07-29 10:29 Raffaello 阅读(169) 评论(0) 推荐(0)
 
摘要: 大一的暑假,日子一如既往的平淡...... 浑噩颓废中,空虚越发的膨胀,懊恼与自责作祟,这才发现,一年时光的冲刷,我还是那个小菜鸟。 第一次经营所谓博客的潮流,希望从搁笔的这一刻起,我的专业成长之旅从此开启~~~ 文怡加油~~~~ 阅读全文
posted @ 2011-07-29 10:27 Raffaello 阅读(111) 评论(0) 推荐(0)