Задача #1361
Обработка массивов
(С. Чайкин) В файле содержится закольцованная последовательность целых чисел, по модулю не превышающих 100 000. Определите количество троек элементов последовательности, в которых только одно число не является четырехзначными, а сумма элементов тройки является полным квадратом. В ответе запишите два числа: сначала количество найденных троек, затем минимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три различных элемента последовательности, находящихся на равном друг от друга расстоянии.
Войдите, чтобы история ответов и статистика сохранялись.
Решение
Ответ
31
256
def f(x): return 1000 <= abs(x) < 10000a = list(map(int, open('17.txt')))d = len(a) // 3b = []for x, y, z in zip(a, a[d:], a[d*2:]):s = x + y + zif f(x) + f(y) + f(z) == 2 and s >= 0 and s ** 0.5 % 1 == 0:b += [s]print(len(b), min(b))