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

Обсуждение задачи 1196. Экзамен по истории

O(n) is possible
Послано Anton The Great 8 апр 2007 02:58
But I think, it is cheating...

Edited by author 08.04.2007 03:01
Re: O(n) is possible
Послано Romko [Lviv NU] 8 апр 2007 14:23
My solution is O(n). Bool array, no cheating!
O(n*log n)-My solution
Послано Tutanhamon 8 мар 2008 01:40
in input we have first array sorted an second unsorted

my solution needs to sort second array
so it has O(n*log n) quick sort.
where n is M(number of Student's dates)

then i solve problem in O(n):
--------------------------------
  While (j<=M) and (i<=N) do begin
    While S[j]<T[i] do inc(j);
    if S[j]=T[i] then begin
      inc(j);
      inc(Am);
    end else inc(i);
  end;
-----------------------------------
S-Array of teacher records
T-Array of student records
Am-number of complying dates

so, this algo is O(N*log n);