题目链接POJ1128 思路 如果在A的边框上出现了字母B,就说明B在A的上方 如果边框A在边框B的下方,就添加从A到B的一条有向边(题目要求从下到上输出) 那么所求的是所得有向无环图的拓扑排序 题目还要求按照字典序输出所有可能的顺序,用深度优先搜索 附代码 #include <cstdio> #i ...
分类:
编程语言 时间:
2017-06-17 18:24:02
阅读次数:
234
最小生成树范例,Kruskal解法-以边为主体扩展最小生成树,需要利用并查集。 ZOJ1203-Swordfish 题意:求n个给定平面坐标的城市中的一条平面距离上的最短路长(保留两位小数) 题解:这道题数据不是很大,用Kruskal和Prim等算法都能够做。 Kruskal的算法思路是以边为主体扩 ...
分类:
其他好文 时间:
2016-04-05 23:05:01
阅读次数:
301
经典的拓扑排序问题,难点在于字典序输出和建立拓扑图,另外理解题意是最难的难点,没有之一... POJ1128(ZOJ1083)-Frame Stacking 题意:每个图片由同一字母组成的边框表示,每个图片的字母都不同; 在一个最多30*30的区域放置这些图片,问底层向顶层叠加的图片次序,多选时按字 ...
分类:
编程语言 时间:
2016-04-04 13:08:57
阅读次数:
449
poj2585
poj1128
图论部分的问题,重要的是建图。这两个题目比较类似。
poj2585,通过建图,直接进行topsort,建图过程是:标定每一部分应有的标号,比较实际的标号,进行加边,数据量小,可采用矩阵存储。通过拓扑排序,判断是否存在环,如果存在环则BROKEN ,否则就CLEAN;
poj1128,这个建图比上一个麻烦,通过搜索标记每一个边框的lt(左上角的坐标)和右下角的...
分类:
编程语言 时间:
2015-08-04 11:14:20
阅读次数:
209
构图+拓扑排序。虽然是第二次写,但是感觉自己还是很不熟。求所有拓扑序列的时候,用DFS即可,代码不是很长,但是我却傻瓜的没有注意到入度要先置为0这件事情。其实最浪费时间的是构图,这花了我很长时间。最好的方法就像上一次做的时候所言,还是要拆分成一个个函数去做,init要写,其他不方便实现的过程可以先用...
分类:
其他好文 时间:
2015-06-25 22:48:18
阅读次数:
120
很显然地一个拓扑排序。根据题意很容易能够构图,由于需要求所有的拓扑序列,于是dfs,我们通过记录edge来修复in[].代码质量很烂,vis完全可以用in=-1的情况替代,这里注意到memset赋值的大小问题。以及一直WA,原因在于,total并没有初始化为零,虽然在最开始初始化了,但是后来会被修改...
分类:
其他好文 时间:
2015-06-05 19:14:17
阅读次数:
119
http://poj.org/problem?id=1128题目大意:如图有5个9*8的区域上面分别存在由相同的字母围成的长方形;把他们依次覆盖起来,便形成了如下的图形//////可以大致看出有的字母方框的字母被另外的一些字母覆盖了起来输出从下到上被覆盖的字母的顺序,例如此图为EDABC大致思路:这...
分类:
其他好文 时间:
2015-05-17 12:06:02
阅读次数:
145
Frame Stacking
Time Limit: 1000MS
Memory Limit: 10000K
Total Submissions: 4454
Accepted: 1509
Description
Consider the following 5 picture frames placed on an 9 x 8 a...
分类:
编程语言 时间:
2015-04-28 22:56:01
阅读次数:
347
按照硕神的说法,以无比丑的姿势 建了个图。然后裸搞 拓扑排序#include #include #include #include #include #include #include #include #include #include #include #include #includeus.....
分类:
其他好文 时间:
2014-08-07 21:40:30
阅读次数:
262
Frame Stacking
Time Limit: 1000MS
Memory Limit: 10000K
Total Submissions: 4074
Accepted: 1371
Description
Consider the following 5 picture frames placed on an 9 x 8...
分类:
其他好文 时间:
2014-08-03 18:06:45
阅读次数:
269