Pagini recente » Arhiva de probleme | Cod sursa (job #162584) | Profil TheNechiz | Cod sursa (job #2689530) | Cod sursa (job #170250)
Cod sursa(job #170250)
#include<stdio.h>
#include<string.h>
#define input "sortaret.in"
#define output "sortaret.out"
#define dim 50001
int n, cont, m, incep;
char a[dim][dim];
void citire();
void rez(int k);
FILE *in, *out;
int main()
{
in = fopen (input, "r");
out = fopen (output, "w");
citire();
rez(incep);
return 0;
}
void citire()
{
int i, j, x, y;
fscanf(in, "%d%d", &n, &m);
for(i=0; i<=n; i++)
memset(a[i], 0, n+1);
for(i=1; i<=m; i++)
{
fscanf(in, "%d%d", &x, &y);
a[x][y] = 1;
}
for(i=1; i<=n; i++)
{
for(j=1; j<=n; j++)
{
a[i][0] += a[i][j];
a[0][i] += a[j][i];
}
if(a[0][i] == 0)
incep = i;
}
}
void rez(int k)
{
int i;
fprintf(out, "%d ", k);
cont++;
for(i=1; i<=n; i++)
if(a[k][i] == 1)
rez(i);
}