Доброго времени суток :) Помогите новичку
Пишу топологическую сортировку.
В одном из тестов ограничение по времени 3 секунды, количество графов 1000 и 500 ребер (соответственно также 500 пар чисел, означающих начало и конец ребра).
Для сортировки использую матрицу смежностей matr, в которую записываю 1 , если существует такое ребро из i - ого ребра в j - ое. Cчитывание i и j идет целых 7 секунд :-( Не могу придумать более оптимальный вариант. Может можно чем-нибудь заменить scanf?
Вот кусочек кода:
int** readbond( int** matr)
{
int i, j;
while (scanf("%d%d", &i, &j))
{
matr[i ][j] = 1;
}
return matr;
}