ENG  RUSTimus Online Judge
Online Judge
Задачи
Авторы
Соревнования
О системе
Часто задаваемые вопросы
Новости сайта
Форум
Ссылки
Архив задач
Отправить на проверку
Состояние проверки
Руководство
Регистрация
Исправить данные
Рейтинг авторов
Текущее соревнование
Расписание
Прошедшие соревнования
Правила
вернуться в форум

Общий форум

Help! I don't know why I get wrong answer on Question 1022
Послано Yunzhong 10 июн 2002 12:03
#include<stdio.h>
char mar[100][100],v[100];
int n,p,q[100];
void search(int m){
    int i,j;
    v[m]=1;
    for(j=0;j<n;j++)
        if(mar[m][j] && !v[j])
            search(j);
    q[--p]=m;
}

void main(){
    int i,j;

    scanf("%d\n",&n);
    for(i=0;i<n;i++)
        for(j=0;j<n;j++)
        mar[i][j]=0;
    for(i=0;i<n;i++)
        while(scanf("%d",&j)==1 && j>0)
            mar[i][j-1]=1;

    for(i=0;i<n;i++) v[i]=0;
    p=n;
    for(i=0;i<n;i++)
        if(!v[i]) search(i);
    for(i=0;i<n;i++)
        printf("%d ",q[i]+1);
    printf("\n");
}