Известно, что любое натуральное число можно представить в виде суммы не более чем четырех квадратов неотрицательных целых чисел (теорема Лагранжа). Ввести натуральное N⩽100000 и найти для него такие целые неотрицательные x,y,z и t, чтобы x²+y²+z²+t²=N. Вывести все такие четвёрки в следующем формате: x,y,z и t — через пробел, и упорядочены по убыванию, а сами четвёрки — лексикографически по возрастанию (без повторений).
100
5 5 5 5 7 5 5 1 7 7 1 1 8 4 4 2 8 6 0 0 9 3 3 1 10 0 0 0
Подсказка: что выведет команда print(*Последовательность) ☺ ?
- Подсказка: четыре тупо вложенных цикла не пройдут тестов. Нужны нетупо вложенные, в которых не вычисляется лишнее.
Спойлер:
Спойлер: на сайте есть статья на эту тему: