var x,x1,x2,x3: integer; //x1- 1 число, х2- 2 число, х3 - 3 число
begin
randomize;
x: =random(1000)+10;
if x div 100 > 0 then begin x1: =x div 100;
x2: =(x mod 100) div 10;
x3: =(x mod 100) mod 10;
writeln(x,', ',x3,x2,x1);
end
else writeln(x);
end.
храним в памяти 3 последних считанных числа. для каждой такой тройки проверяем, верно ли, что a[i] - a[i - 1] = a[i - 1] - a[i - 2] > 0. если это так, выводим тройку, устанавливаем флажок found и выходим из цикла. если после завершения работы цикла found = false, то тройка не найдена, нужно вывести -1.
в pascalabc.net тип integer хранит числа до 2 с лишним миллиардов, все числа и разность чисел должны в нем поместиться.
код (pascalabc.net 3.4.2.1837):
begin
var values : = new integer[3];
var n : = readinteger;
(values[1], values[2]) : = readinteger2;
var prev_diff : = values[1] - values[0];
var found : = false;
for var i : = 3 to n do begin
values[i mod 3] : = readinteger;
var diff : = values[i mod 3] - values[(i - 1) mod 3];
if (diff = prev_diff) and (diff > 0) then begin
print(values[(i - 2) mod 3], values[(i - 1) mod 3], values[i mod 3]);
found : = true;
break;
end;
prev_diff : = diff;
end;
if not found then print(-1);
end.
Поделитесь своими знаниями, ответьте на вопрос:
Сколько страниц текста уместится на дискету объемом 1 мб, если 1страница занимает 4кб