Ввести произвольную последовательность (не обязательно кортеж) натуральных чисел, не превышающих 1000000. Вывести, сколько среди них различных чисел, являющихся суммой трёх квадратов.

3, 4, 2, 9, 1, 5, 6, 7, 8, 3, 6

3

(это 1+1+1, 1+1+4 и 1+4+4)

Кажется, в имеющихся условиях единственный быстрый способ — это составить множество сумм трёх квадратов (с учётом ограничения сверху, т. к. в исходной последовательности есть максимальное число :) ) и просто взять размер его пересечения с исходной последовательностью.

Множество сумм трёх квадратов:


CategoryHomework

LecturesCMC/PythonIntro2017/Homework_ThreeSquares (последним исправлял пользователь FrBrGeorge 2017-11-12 19:18:36)