(В. Ганиев) В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(1\) до \(10~000\) включительно. Рассматриваются все тройки элементов последовательности, которые в результате любой перестановки могут образовать геометрическую прогрессию, знаменатель которой больше \(1.\) Определите и запишите в ответе сначала количество таких троек, а затем квадрат максимального знаменателя прогрессии для всех таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(z) for z in open('5015.txt')]
q, mb = 0, 0
for tr in zip(nums, nums[1:], nums[2:]):
tmp = list(tr)
tmp.sort()
a, b, c = tmp
if b**2 == a * c and b > a:
q += 1
mb = max(mb, b // a)
print(q, mb**2)
Ответ: \(8 \,\, 1089\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене