技能修炼 | ||||||
|
||||||
Description | ||||||
寒假第三次周赛强势袭来,首先祝愿大能依靠自己所学的取得一个好成绩。学习之余,我们在这里说一个有关游戏的问题,你来解决一下。一般的游戏中人物技能在修炼时有个特点,就是后面的技能一般都要修炼了前面的某些个才可以修炼。比如10级有一个技能火弹术,20级有一个火焰术,那么此时假如你没修炼10级的火弹,你就不能直接修20级的火焰术,就是这样的道理。现在的问题是,给定一些个技能间的依赖关系,你来写程序来判断该以什么样的顺序来修炼这些技能。为了简化问题,我们用数代表不同的技能,一个数代表一种技能,输入形式N1 N2则代表N1是N2的前置技能。 |
||||||
Input | ||||||
本题有多组测试数据,每组中第一行为两个数N(1 <= N <= 500)和M(1 <= M <= N*(N-1)/2),其中N表示技能总数,接下来有M行。每行是代表两个技能的数字N1和N2,表示N1是N2的前置技能。 |
||||||
Output | ||||||
对每组测试数据,输出确定下来的技能修炼顺序,要求对于输入的每组数据,输出一行,一行中各技能之间以一个空格间隔(行尾不该有空格而是换行符)。 注意,对于排序的结果可能不是唯一的,这时要求先输出代表技能的数较小的。 |
||||||
Sample Input | ||||||
4 3 1 2 2 3 4 3 |
||||||
Sample Output | ||||||
1 2 4 3 |
||||||
Hint | ||||||
对于上面的样例中2和4都是3的前置技能,但是数字2较小,因此先输出2。
模板题
|
详细解决方案
Hust oj 1631 技能修炼(拓扑排序)
热度:21 发布时间:2023-12-22 04:33:54.0
相关解决方案
- poj 1631 Bridging signals
- 【UVa】【DP】1631 Locker
- UPC 1336、1351、1353、1631、2655
- Leetcode 1631 Path With Minimum Effort (python)
- HUST 1214 Cubic-free numbers II(区间n=x^3*k的n的个数、枚举x容斥)
- HUST-大整数排序
- HUST-奇偶校验
- HUST-找位置
- HUST-阶乘
- HUST-回文字符串
- HUST-排序
- HUST-统计单词
- HUST-矩阵转置
- POJ 1631 Bridging signals 最长上升子序列小结 LIS的O(nlogn)算法
- Hust oj 1813 小乐乐要下山(dp + 路径还原)
- Hust oj 1861 猥琐宅男——koko(DP)
- Hust oj 1293 取数(Map)
- Hust oj 1160 吸血鬼(并查集)
- Hust oj 1429 凸多边形(叉乘+二分)
- Hust oj 1630 网线(MST)
- Hust oj 1987 逃课的孩子(Map)
- Hust oj 1926 函数式计算(二分)
- Hust oj 1921 三原色(改进版)(容斥原理)
- Hust oj 1953 RSA验证(快速幂)
- Hust oj 1949 寻找宝藏(BFS)
- Hust oj 1929 走三方,路迢迢水长长(递推)
- Hust oj 1944 皮卡丘(同蚂蚁感冒)
- Hust oj 1431 摞盘子(水题)
- Hust oj 1629 统计图(水题)
- Hust oj 1608 XianGe的旅途(水题)