比赛 20120224 评测结果 AAAAAAAAAW
题目名称 课程安排问题 最终得分 90
用户昵称 11111111 运行时间 0.000 s
代码语言 C++ 内存使用 0.00 MiB
提交时间 2012-02-24 21:16:05
显示代码纯文本
#include<iostream>
#include<fstream>
using namespace std;
int main()
{
	ifstream fin("curriculum.in");
	ofstream fout("curriculum.out");
	int n,a,g=0;
	int l[101][101],h[101],t[101]={0};
	bool v[101];
	fin>>n;
	for (int i=1;i<=n;i++)
	{
		int a;
		fin>>a;
		for (int j=0;j<a;j++)
		{
			int b;
			fin>>b;
			t[i]++;
			l[i][t[i]]=b;
		}
		v[i]=true;
	}
	a=n;
	while (a>0)
	{
		int b;
		for (int i=1;i<=n;i++)
		{
			if ((t[i]==0)&&(v[i]))
			{
				b=i;
				break;
			}
		}
		for (int i=1;i<=n;i++)
		{
			if (i==b)
				continue;
			for (int j=1;j<=n;j++)
			{
				if (l[i][j]==b)
				{
					l[i][j]=0;
					t[i]--;
				}
			}
		}
		g++;
		h[g]=b;
		a--;
		v[b]=0;
	}
	for (int i=1;i<=n;i++)
		fout<<h[i]<<' ';
	fin.close();
	fout.close();
	return 0;
}