TouchStone
  请登录后使用
登录 注册
 系统首页  练习题库  考试列表  判题结果  信息发布  解题排行
  • 首页
  • 题库
  • P1109
  • 题目
  • P1109选课
    限制 : 时间限制 : 10000 MS   空间限制 : 65536 KB
    问题描述

    在CQNK中学,学生们可以自由选择他喜欢的课程,但有的课程必须学完一些其它课程后才能选择。比如要选“编程”课就必须先学“离散数学”和“何老板思想”。有个同学有n门喜欢的课程,下面给出这n门课程间的关系(课程的编号为1到n),问要学完这n门课程,需要安排一个怎样的学习顺序才是合理的。

    输入格式

    第一行 两个整数n(n<=200)和m(m<=500)
    接下来m行,每行两个整数x和y,表示要学y课程,必须先学x课程。

    输出格式

    一行,n个空格间隔的整数,从左到右表示学完这n门课程的先后顺序。(如果有多种方案,输出字典序最小的方案)
    如果无法找到一个合理的学习顺序,输出"impossible"

    样例输入 1

    4 4
    1 2
    2 4
    1 3
    3 4

    样例输出 1

    1 2 3 4

    样例输入 2

    6 8
    1 2
    1 3
    1 4
    3 2
    3 5
    4 5
    6 4
    6 5

    样例输出 2

    1 3 2 6 4 5