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

Обсуждение задачи 1160. Network

Grim_Disciple WA#5 [1] // Задача 1160. Network 2 окт 2009 18:23
need help. i used Kruskal's algorithm
esbybb Re: WA#5 // Задача 1160. Network 3 фев 2016 06:59
hi,
you already solved this problem perhaps someone else might stuck in this test also:

for Kruskal's algorithm i used to use this union method and got WA5,

    static void union(int su, int sv) {
        int segu = seg_in_hub[su];
        seg_in_hub[sv] = segu;
    }//seg_in_hub[1..H+1] initialized with 1,2,3..H
Instead, i rewrote this method and the solution got accepted
    static int union(int su, int sv) {
        int c = 1;
        int segu = seg_in_hub[su];
        int segv = seg_in_hub[sv];
        for (int i=0; i<seg_in_hub.length; i++) {
            if (seg_in_hub[i] == segu) {
                c++;
                seg_in_hub[i] = segv;
            }
        }
        return c;
    }

//Also check if method returns H then break the loop