Напишите программу Для числового отрезка АВ определяет, сколько среди целых, натуральных чисел, принадлежащих отрезку [АВ] четных и при этом больших чем Z.. Выводит на экран количество таких чисел.
крайние тролли обнимутся всего один раз, развернутся и уйдут на свой конец улицы, больше никого не встретив.
вторые с краю тролли обнимутся первый раз, развернутся, встретят крайнего тролля, обнимутся с ним, развернутся, опять встретятся-обнимутся, и, развернувшись уйдут на конец улицы больше никого не встретив (крайний тролль то уже ушел...) итого 3 обнимания.
Продолжая эту цепочку получаем
1 3 5 7 9 11 12 11 9 7 5 3 1
отличается только первый тролль из семерки, поскольку он в результате уйдет не на свой конец улицы, а на противоположный...
import math
p = int(
b = false
for i in range(1, p ** 2):
gip = (p ** 2) + (i ** 2)
if math.sqrt(gip) % 1 == 0:
b = true
if int(math.sqrt(gip)) ! = p:
print(int(math.sqrt(
if b == false:
print(-1)
# что-то типо этого, но не проходит по времени. надо смотреть диапазон. может если кто дорешает, ответьте. а так всё норм работает)
84
Пошаговое объяснение:
крайние тролли обнимутся всего один раз, развернутся и уйдут на свой конец улицы, больше никого не встретив.
вторые с краю тролли обнимутся первый раз, развернутся, встретят крайнего тролля, обнимутся с ним, развернутся, опять встретятся-обнимутся, и, развернувшись уйдут на конец улицы больше никого не встретив (крайний тролль то уже ушел...) итого 3 обнимания.
Продолжая эту цепочку получаем
1 3 5 7 9 11 12 11 9 7 5 3 1
отличается только первый тролль из семерки, поскольку он в результате уйдет не на свой конец улицы, а на противоположный...