amina318
11.08.2020 20:49

Исполнитель Чертёжник перемещается на координатной плоскости, оставляя след в виде линии. Чертёжник может выполнять команду Сместиться на (a, b) (где a, b – целые числа), перемещающую Чертёжника из точки с координатами (x, y) в точку с координатами (x + a, y + b). Если числа a, b положительные, значение соответствующей координаты увеличивается, если отрицательные, уменьшается. Например, если Чертёжник находится в точке с координатами (7, -2), то команда Сместиться на (-2, 3) переместит Чертёжника в точку (5, 1).
Запись
Повтори k раз
Команда1 Команда2 Команда3
Конец
означает, что последовательность команд Команда1 Команда2 Команда3 повторится k раз.
Чертёжнику был дан для исполнения следующий алгоритм: Сместиться на (4, -2)
Повтори 5 раз
Сместиться на (2, 5)
Сместиться на (4, -1)
Конец
Сместиться на (-6, –7)
Какую единственную команду надо выполнить Чертёжнику, чтобы вернуться в исходную точку, из которой он начал движение?
Сместиться на (28, 11)
Сместиться на (-28, –11)
Сместиться на (-28, 11)
Сместиться на (28, –11)

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
kostina68
26.04.2022 17:41

-32768 .. 32768 (кроме 0)

Объяснение:

16 битами можно закодировать 2^{16}=65536 различных значений.

По условию кодируются положительные и отрицательные числа в равном количестве, так что и тех и других половина, по 65536 : 2 = 32768 чисел.

Получается диапазон -32768 .. 32768, из которого убрали нуль.

Обычно всё же ноль в представлениях целых чисел есть. Если использовать прямой код для записи чисел, то получится как раз одинаковое количество положительных и отрицательных чисел, но два нуля (положительный и отрицательный). Для этого случая диапазон будет -32767..32767.

0,0(0 оценок)
Ответ:
EpsilonDelta
15.10.2020 01:12

global n,m,matrix,pathmatrix

def rec(x, y):

   try:

       return pathmatrix[x,y]

   except:

       if x > 0:

           left = rec(x - 1, y)

       else:

           left = (-1,[])

       if y > 0:

           up = rec(x, y - 1)

       else:

           up = (-1,[])

       maxdist = max(left[0], up[0]) + matrix[x][y]

       if left[0] > up[0]:

           path = pathmatrix[x - 1,y][1].copy()

           path.append('D')

       else:

           path = pathmatrix[x,y - 1][1].copy()

           path.append('R')

       pathmatrix[x,y] = (maxdist,path)

       return pathmatrix[x,y]

n,m = [int(i) for i in input().split()]

matrix = [[int(i) for i in input().split()] for j in range(n)]

pathmatrix = {(0,0) : (matrix[0][0], [])}

res = rec(n-1,m-1)

print(res[0])

print(' '.join(res[1]))

global n,m,matrix,pathmatrix

def rec(x, y):

   try:

       return pathmatrix[x,y]

   except:

       if x > 0:

           left = rec(x - 1, y)

       else:

           left = (-1,[])

       if y > 0:

           up = rec(x, y - 1)

       else:

           up = (-1,[])

       maxdist = max(left[0], up[0]) + matrix[x][y]

       if left[0] > up[0]:

           path = pathmatrix[x - 1,y][1].copy()

           path.append('D')

       else:

           path = pathmatrix[x,y - 1][1].copy()

           path.append('R')

       pathmatrix[x,y] = (maxdist,path)

       return pathmatrix[x,y]

n,m = [int(i) for i in input().split()]

matrix = [[int(i) for i in input().split()] for j in range(n)]

pathmatrix = {(0,0) : (matrix[0][0], [])}

res = rec(n-1,m-1)

print(res[0])

print(' '.join(res[1]))

Объяснение:

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота