Ограничение медли 1 секундаОграничение памяти 64MbВвод стандартный ввод либо

Ограничение медли 1 секунда
Ограничение памяти 64Mb
Ввод стандартный ввод либо input.txt
Вывод стандартный вывод либо output.txt
Найти все вероятные значения длины гипотенузы в прямоугольном треугольнике с целыми гранями, если один из катетов имеет длину p, где p обычное число.

Подсказываем, что обычным называется целое положительное число, имеющее ровно два делителя единицу и самого себя.

Формат ввода
Входные данные содержат одно целое число p (2 p 109+9, p обычное).

Формат вывода
Если пифагоровых треугольников с катетом длины p нет, выведите -1. Иначе выведите возможные длины гипотенуз треугольников, перечисленные в порядке возрастания (то есть от меньшей к большей).

Пример
Ввод Вывод
3
5
Примечания
Объясненье к примеру: cуществует только один целочисленный прямоугольный треугольник с катетом одинаковым 3 традиционный пифагоров треугольник c длиной гипотенузы, равной 5.

Решением к данной задачке является программа, написанная на одном из представленных в системе языков программирования. Программка должна считывать данные со стандартного потока ввода (по другому говоря, с клавиатуры) и выводить ответ в стандартный вывод (по другому разговаривая, на экран).

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

Перед тем, как отправить написанную Вами программку, не пренебрегайте указать язык программирования, на котором она написана. Выбор языка исполняется с помощью выпадающего меню, размещенного сходу под этим текстом.

Задать свой вопрос
Раппопорт Александра
Что - то ничего не выпадает под этим текстом. На Питоне подойдет?
Василий
Да
Анатолий Сободарев
Есть решение этой и 5 задачки?
Варвара Полозова
Нет сам только их не сделал
Юрий
Печаль(
2 ответа

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

Александра
Так как я не понял, что значит число 109+9 (надо все же писать как следует), счел, что это 10^9+9. В этом случае квадрат такового числа не превысит 10^19 и типа int64 будет достаточно. Ели же это какое-то другое, большее число, необходимо использовать тип BigInteger. Только и всего.

Если катет p - обычное число, то решение всегда единственное.

На Питоне.

p=int(input())

n=(p*p-1)//2+1

print(n)




Колян Тицнов
Пример приведите, где может быть несколько значений гипотенузы, если p - простое.
Софья Шлейдер
программка работает ошибочно
Данька Поникин
пример пифагоровых троек с различными гипотенузами- 6,8,10 и 8, 15,17
Степан Наканечнов
нет 8 - не простое число
Степа Гедеонов
да, понимаю
Сергей Косачек
но все равно не работает((
Арсений Лейзеров
Ни 6, ни 8, ни 15 простыми не являются.
Даниил Адкин
ща
Регина Нитфуллина
Всего одну строчку и надобно поправить, при р=2 - не верный ответ будет. Строку n=(p*p-1)//2+1 поменять на 2 строчки if p==2: n= - 1 2-ая else n=(p*p-1)//2+1
Любовь
var p:integer;beginreadln (p);if (p=2)then writeln ('-1') elsewriteln ((p*p-1)/2+1);end.вот такая программка у меня, она ошибочная, написала в сообщения, пишут типа такая фигня не реальна с большенными числами. чо вот от нас желают
, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт