Pagini recente » Cod sursa (job #2335897) | Cod sursa (job #2005632) | Cod sursa (job #1781087) | iconcurs10 | Cod sursa (job #481105)
Cod sursa(job #481105)
#include <cstdio>
#include <cstdlib>
#include <list>
FILE *fin=fopen("sortaret.in","r");
FILE *fout=fopen("sortaret.out","w");
int n,m;
std::list<int> a[100000];
bool viz[100000];
void viziteaza(int i)
{
if (viz[i]) return;
viz[i]=true;
std::list<int>::const_iterator in,end=a[i].end();
for (in=a[i].begin(); in!=end; in++)
viziteaza(*in);
fprintf(fout, "%d ",i+1);
}
int main (int argc, char * const argv[]) {
fscanf(fin, "%d %d",&n,&m);
for (int i=0; i<n; i++)
{
int x,y;
fscanf(fin, "%d %d",&x,&y);
x--; y--;
a[y].push_back(x);
}
memset(viz, 0, sizeof(bool)*m);
for (int i=0; i<m; i++)
viziteaza(i);
fputc('\n', fout);
fclose(fin);
fclose(fout);
return 0;
}