主题:编程 选课系统
各位大神,帮帮忙啊!急求!
计算机系有很多课程,比如数学分析、高等代数、计算机导论、C语言程序设计、面向对象程序设计、数据结构、算法设计与分析、数理逻辑、汇编程序设计、编译原理等等。其中有些课程是需要前面一些课程的基础,比如要修数据结构这么课必须先修C语言程序设计。
Input
输入的第一行是一个正整数N(0 < N <= 500),表示计算机系总共需要修的课程的数目。课程从1-N编号。
输入的第二行包括N个课程的名字,每个课程名字由大写字母或小写字母或下划线组成,最长不超过40个字符,每两个相邻的名字用空格隔开。
输入的第三行到N+2行数据描述课程之间的依赖关系。第i+2行描述第i个课程的依赖关系,格式如下:
Mi m1 m2 m3 ... mMi
其中Mi表示要修第i个课程共需要先修Mi个课程,后面跟随着Mi个课程编号,编号从小到大排列。
Output
输出N个课程的名字表示您建议的顺序,如果存在多个序列则您只需要输出其中任意一个。如果没有办法找到这样的序列则输出"Impossible!"(不需要输出引号,但是要输出感叹号,注意大小写)。
题目如上,请用C语言,最好有注释,我先在这谢过了啊!
计算机系有很多课程,比如数学分析、高等代数、计算机导论、C语言程序设计、面向对象程序设计、数据结构、算法设计与分析、数理逻辑、汇编程序设计、编译原理等等。其中有些课程是需要前面一些课程的基础,比如要修数据结构这么课必须先修C语言程序设计。
Input
输入的第一行是一个正整数N(0 < N <= 500),表示计算机系总共需要修的课程的数目。课程从1-N编号。
输入的第二行包括N个课程的名字,每个课程名字由大写字母或小写字母或下划线组成,最长不超过40个字符,每两个相邻的名字用空格隔开。
输入的第三行到N+2行数据描述课程之间的依赖关系。第i+2行描述第i个课程的依赖关系,格式如下:
Mi m1 m2 m3 ... mMi
其中Mi表示要修第i个课程共需要先修Mi个课程,后面跟随着Mi个课程编号,编号从小到大排列。
Output
输出N个课程的名字表示您建议的顺序,如果存在多个序列则您只需要输出其中任意一个。如果没有办法找到这样的序列则输出"Impossible!"(不需要输出引号,但是要输出感叹号,注意大小写)。
题目如上,请用C语言,最好有注释,我先在这谢过了啊!