tefdst
?>

Ханойская башня на Python 3. Ввод: Первая строка содержит количество дисков - натуральное число N (N≤10^5 Вторая строка файла содержит строку символов длины N. Для каждого i (1≤i≤N) i-й символ - 'A', если диск с номером i находится на стержне A, 'B' - если на стержне B, 'C' - если на стержне C. Вывод: В единственной строке должно быть выведено одно неотрицательное число - минимальное количество оборотов, необходимое для того, чтобы все диски располагались на стержне B, согласно модулю 10^9 + 9. Последнее условие не имеет другого смысла, кроме уменьшения размера выходного числа. Например, если пять дисков расположены, как показано на рисунке 2, то требуется 10 ходов, чтобы расположить их на стержне B: A → C, B → C, A → B, C → B, C → A, B → A, C → B, A → C, A → B, C → B. Чтобы упростить задачу, на этот раз вам нужно будет найти только наименьшее количество необходимых ходов. Напишите программу, определяющую минимально необходимое количество оборотов после модуля 10 ^ 9 + 9 для данной колесной формулы, чтобы все колеса были помещены на стержень B.

Информатика

Ответы

Avshirokova51

1.

а)

а = а - 4 = 7 - 4 = 3

b = -a = -3

c = -a + 2 * b = -3 + 2 * (-3) = -3 - 6 = -9

б)

b = a + 4 = 2 + 4 = 6

b = 1 - b = 1 - 6 = -5

c = -b + 3 * a = -5 + 3 * 2 = -5 + 6 = 1

2.

a)

b = 5? (Нет, 0)

b: = b + 1 = 0 + 1 = 1

a: = a * 3 = 1 * 3 = 3

b = 5? (Нет, 1)

b: = b + 1 = 1 + 1 = 2

a: = a * 3 = 3 * 3 = 9

b = 5? (Нет, 2)

b: = b + 1 = 2 + 1 = 3

a: = a * 3 = 9 * 3 = 27

b = 5? (Нет, 3)

b: = b + 1 = 3 + 1 = 4

a: = a * 3 = 27 * 3 = 81

b = 5? (Нет, 4)

b: = b + 1 = 4 + 1 = 5

a: = a * 3 = 81 * 3 = 243

б)

b = 0? (Нет, 3)

b: = b - 1 = 3 - 1 = 2

a: = a * 4 = 1 * 4 = 4

b = 0? (Нет, 2)

b: = b - 1 = 2 - 1 = 1

a: = a * 4 = 4 * 4 = 16

b = 0? (Нет, 1)

b: = b - 1 = 1 - 1 = 0

a: = a * 4 = 16 * 4 = 64

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Ханойская башня на Python 3. Ввод: Первая строка содержит количество дисков - натуральное число N (N≤10^5 Вторая строка файла содержит строку символов длины N. Для каждого i (1≤i≤N) i-й символ - 'A', если диск с номером i находится на стержне A, 'B' - если на стержне B, 'C' - если на стержне C. Вывод: В единственной строке должно быть выведено одно неотрицательное число - минимальное количество оборотов, необходимое для того, чтобы все диски располагались на стержне B, согласно модулю 10^9 + 9. Последнее условие не имеет другого смысла, кроме уменьшения размера выходного числа. Например, если пять дисков расположены, как показано на рисунке 2, то требуется 10 ходов, чтобы расположить их на стержне B: A → C, B → C, A → B, C → B, C → A, B → A, C → B, A → C, A → B, C → B. Чтобы упростить задачу, на этот раз вам нужно будет найти только наименьшее количество необходимых ходов. Напишите программу, определяющую минимально необходимое количество оборотов после модуля 10 ^ 9 + 9 для данной колесной формулы, чтобы все колеса были помещены на стержень B.
Ваше имя (никнейм)*
Email*
Комментарий*