Ограничение времени 1 секунда
Ограничение памяти 64Mb
Ввод стандартный ввод или input.txt
Вывод стандартный вывод или output.txt
Найти все возможные значения длины гипотенузы в прямоугольном треугольнике с целыми сторонами, если один из катетов имеет длину p, где p — простое число.
Напоминаем, что простым называется целое положительное число, имеющее ровно два делителя — единицу и самого себя.
Формат ввода
Входные данные содержат одно целое число p (2 ≤ p ≤ 109+9, p — простое).
Формат вывода
Если пифагоровых треугольников с катетом длины p нет, выведите -1. Иначе выведите возможные длины гипотенуз треугольников, перечисленные в порядке возрастания (то есть от меньшей к большей).
Пример
Ввод Вывод
3
5
Примечания
Пояснение к примеру: cуществует только один целочисленный прямоугольный треугольник с катетом равным 3 — классический пифагоров треугольник c длиной гипотенузы, равной 5.
Решением к данной задаче является программа, написанная на одном из представленных в системе языков программирования. Программа должна считывать данные со стандартного потока ввода (иначе говоря, «с клавиатуры») и выводить ответ в стандартный вывод (иначе говоря, «на экран»).
Выводить лишние символы (исключая пробелы и переводы строк) недопустимо, то есть если вместо ответа будет выведен ответ и после него (или перед ним) какое-то лишнее число или строка, то система ответ не зачтёт.
Перед тем, как отправить написанную Вами программу, не забудьте указать язык программирования, на котором она написана. Выбор языка осуществляется с помощью выпадающего меню, расположенного сразу под этим текстом.
Answers & Comments
PascalABC.NET 3.4.2, сборка 1864 от 11.11.2018
Внимание! Если программа не работает, обновите версию!
begin
var a:int64;
Read(a);
(a = 2 ? -1 : (a * a + 1) div 2).Println
end.
Пример
13
85
begin
readln (p);
if (p=2)then writeln ('-1') else
writeln ((p*p-1)/2+1);
end.
вот такая программа у меня, она неправильная, написала в сообщения, пишут типа такая фигня не действительна с большими числами.
чо вот от нас хотят