В файле содержится последовательность из 10 000 целых положительных чисел. Каждое число не превышает
Ответ:
Сначала считаем все числа из файла в массив. Для каждой пары будем проверять,
Приведём решение задачи на языке Pascal.
var
i, j: integer;
count: longint;
maxdif: integer;
arr: array[1..10000] of integer;
f: text;
begin
assign(f,'C:\17.txt');
reset(f);
maxdif := 0;
count := 0;
for i := 1 to 10000 do readln(f, arr[i]);
for i := 1 to 10000 - 1 do
for j := i + 1 to 10000 do begin
if (abs(arr[i] - arr[j]) mod 60 = 0) and ((arr[i] mod 15 = 0) or (arr[j] mod 15 = 0)) then begin
count := count + 1;
if abs(arr[i] - arr[j]) > maxdif then maxdif := abs(arr[i] - arr[j]);
end;
end;
writeln(count, ' ', maxdif);
end.
В результате работы данного алгоритма при вводе данных из файла ответ — 63517 9960.
Приведём решение задачи на языке Python.
with open('17.txt') as f:
s = [int(x)for x in f]
res = []
for i in range (0, len(s)):
for j in range(i+1, len(s)):
if ((s[i]-s[j]) % 60 == 0) and (((s[i]) % 15 == 0) or ((s[j]) % 15 == 0)):
res.append(s[i]-s[j])
print(len(res), max(res))
Примечание.
Путь к файлу необходимо указать согласно расположению файла на Вашем компьютере.

