Более подробно: 20:02 - если не учитывать, что в часе 60 минут, то предыдущее "счастливое" время - 19:91, но это не подходит, т.к. часы не могут показывать столько, дальше аналогично: 18:81 - не подходит; 17:71 - не подходит; 16:61 - не подходит; 15:51 - подходит, значит, это - предыдущее "счастливое" время. Чтобы найти, сколько времени с 15:51 до 20:02, то есть найти, насколько 20:02 больше, чем 15:51, нужно из большего отнять меньшее: 20:02-15:51=4:11, то есть 4 часа 11 минут. ответ: 4 ч 11 мин.
// PascalABC.NET 3.0, сборка 1144 от 16.01.2016 begin var n:=ReadInteger('n='); var a:=ArrRandom(n,-50,50); Writeln('Исходный массив'); a.Println; var se:=a.Where(x->x mod 3=0); if se.Count=0 then Writeln('В массиве нет элементов, кратных трем') else begin var b:=se.Max; var i:=0; while a[i]<>b do Inc(i); if i=n-1 then Writeln('Максимальный элемент - последний') else begin Writeln('Результирующий массив'); a[i+1]:=abs(a.Where(x->x<0).Sum); a.Println end end end.