Differences between revisions 1 and 2
Revision 1 as of 2022-09-26 11:13:54
Size: 1752
Editor: FrBrGeorge
Comment:
Revision 2 as of 2022-09-26 11:15:18
Size: 1758
Editor: FrBrGeorge
Comment:
Deletions are marked like this. Additions are marked like this.
Line 20: Line 20:
 1. Спойлер: /* если коротко, то надо следить за диапазонами, в которых перебираются возможные x,y,z и t. Например, x не может быть меньше, а t — больше $$sqrt(N/4)$$, y и z также ограничены */  1. Спойлер: /* если коротко, то надо следить за диапазонами, в которых перебираются возможные x,y,z и t. Например, x не может быть меньше, а t — больше корня из N/4, y и z также ограничены */

Известно, что любое натуральное число можно представить в виде суммы не более чем четырех квадратов неотрицательных целых чисел (теорема Лагранжа). Ввести натуральное 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
  1. Подсказка: что выведет команда print(*Последовательность) ☺ ?

  2. Подсказка: четыре тупо вложенных цикла не пройдут тестов. Нужны нетупо вложенные, в которых не вычисляется лишнее.
  3. Спойлер:

  4. Спойлер: на сайте есть статья на эту тему:


CategoryHomework

LecturesCMC/PythonIntro2022/Homework_FourSquares (last edited 2022-09-26 11:15:18 by FrBrGeorge)