Задача «Семён и ожидание маршрутки» Pascal(Паскаль)

Иногда уехать на другой берег бывает очень сложно. В такие моменты Семён развлекает себя тем, что запоминает номера проезжающих мимо маршруток и пытается определить самую нерасторопную из них. Семён ждёт уже N минут, и в i-ю минуту мимо него проезжала маршрутка с номером Ai. Семён обратил внимание, что все увиденные номера к текущему моменту появлялись как минимум дважды. Теперь Семён хочет определить максимальное время между появлениями маршруток с одинаковым номером. Помогите ему удовлетворить своё любопытство. Входные данные Первая строка содержит целое число N (2 ≤ N ≤ 100000) — количество минут, в течение которых Семён наблюдает за маршрутками. Вторая строка содержит N целых чисел Ai (1 ≤ Ai ≤ 100000) — номера проезжающих мимо маршруток. Каждый номер встречается не менее двух раз. Выходные данные Выведите одно целое число — максимальное время в минутах между последовательным появлением одинаковых номеров. Примеры входные данные 7 23 5 3 3 23 5 23 выходные данные 4 входные данные 5 2 2 1 2 1 выходные данные 2

    var
    a:array[1..10000]of longint;
    i,n,t,rez,max:longint;
    begin
    readln(n);
    max:=0;
    for i:=1 to n do
    begin
    read(t);
    if a[t]=0 then a[t]:=i
     else
     begin
     rez:=i-a[t];
     a[t]:=i;
     if rez>max then max:=rez;
     end;
    end;
    writeln(max);
    end.

Задача требует проверки

Leave a Comment

9 + 1 =