Файл содержит последовательность неотрицательных целых чисел, не превышающих 10 000. Назовём парой два идущих подряд элемента последовательности. Определите количество пар, в которых хотя бы один из двух элементов делится
Например, в последовательности
Ответ:
Решим задачу перебором. Приведём решение данной задачи на языке PascalABC:
var
x, y, count, maxsum: integer;
f: text;
begin
assign(f,'C:\17.txt');
reset(f);
count := 0;
maxsum := 0;
readln(f, x);
while not eof(f) do begin
readln(f, y);
if ((x mod 5 = 0) or (y mod 5 = 0)) and ((x + y) mod 7 = 0) then begin
count := count + 1;
if (x + y > maxsum) then maxsum := x + y;
end;
x := y;
end;
writeln(count, ' ', maxsum);
end.
Результат работы программы — 308 18893.
Ответ: 308 18893.
Приведём решение на языке Python.
f = open("17(6).txt")
s = f.readlines()
k = 0
maxi = 0
for i in range(len(s)):
s[i] = int(s[i])
for i in range(len(s) - 1):
if (s[i] % 5 == 0 or s[i + 1] % 5 == 0) and ((s[i] + s[i + 1]) % 7 == 0):
k += 1
maxi = max(maxi, s[i] + s[i + 1])
print(k, maxi)

