博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
POJ1270 Following Orders(拓扑排序+回溯)
阅读量:7278 次
发布时间:2019-06-30

本文共 748 字,大约阅读时间需要 2 分钟。

题意:

给出一些字母和这些字母之间的大小关系,要求输出所有满足大小的序列。

要点:

这题其实跟拓扑排序关系不是很大了,主要是输出所有序列比较麻烦,注意题目要求要输出所有的字母,也即是没有在大小关系中出现的字母可以插在任意位置上。我们可以这么想:所有当前入度为0的点可以作为起点,假设一个点的入度为3,说明它的前面起码有3个字母,每次dfs递归深度,寻找下一个入度为0的点,最后再回溯即可。

16128464 Accepted 172K 0MS 1302B 2016-09-27 19:52:09
#include
#include
#include
#include
using namespace std;const int N = 25;bool graph[N][N];char str[N], ans[N];int indegree[N];int res;map
num;void toposort(int depth){ if (depth == res)//题目中所有字母都会出现 { printf("%s\n", ans); return; } for (int u = 0; u < res; u++) { if (indegree[u] == 0)//入度为0说明可以以当前点为起点 { indegree[u]--; ans[depth] = str[u]; for(int v=0;v

转载于:https://www.cnblogs.com/seasonal/p/10343680.html

你可能感兴趣的文章
SQL Server 的三种用户自定义函数
查看>>
nodejs文件操作笔记
查看>>
零零散散学算法之具体解释几种最短路径
查看>>
BDB (Berkeley DB)数据库简单介绍(转载)
查看>>
一款基于css3非常实用的鼠标悬停特效
查看>>
分布式存储系统sheepdog
查看>>
Ecshop与Jquery冲突的完美解决方案
查看>>
SQL Server 数据库设计规范
查看>>
sql server 2005 32位+64位、企业版+标准版、CD+DVD 下载地址大全
查看>>
Android中Application类用法
查看>>
(转)C#_WinForm接收命令行参数
查看>>
Java Web系列:JDBC 基础
查看>>
ZOJ 3822 Domination(概率dp 牡丹江现场赛)
查看>>
Atitit.导出excel报表的设计与实现java .net php 总结
查看>>
C3P0在多线程下的maxPoolSize配置
查看>>
二叉树(10)----比較两个二叉树是否同样(结构和数据),递归和非递归
查看>>
ViewController 视图控制器
查看>>
Android自定义控件
查看>>
第十三章 ThreadPoolExecutor源码解析
查看>>
I/O模型之三:两种高性能 I/O 设计模式 Reactor 和 Proactor
查看>>