1. Главная
  2. Библиотека
  3. Программирование
  4. Smartie Stacks at MouthILy Make some stacks of Smarties...
Решение задачи на тему

Smartie Stacks at MouthILy Make some stacks of Smarties. The rules for eating are that if there are two stacks next to each other and the lefthand stack has more Smarties than the right-hand stack, you can swap them and then eat one from the taller stack.

  • Программирование
  • #Основы алгоритмизации и программирования
  • #Структуры и алгоритмы обработки данных
Smartie Stacks at MouthILy Make some stacks of Smarties. The rules for eating are that if there are two stacks next to each other and the lefthand stack has more Smarties than the right-hand stack, you can swap them and then eat one from the taller stack.

Условие:

Smartie Stacks at MouthILy

Make some stacks of Smarties. The rules for eating are that if there are two stacks next to each other and the lefthand stack has more Smarties than the right-hand stack, you can swap them and then eat one from the taller stack.

Here is a set of stacks of Smarties:
Show three different rule-following ways to eat one Smartie from that set of stacks.

Show all of the possible rule-following ways to eat all of these Smarties:

For which sets of stacks of Smarties can you eat all the candy? Explain.
inspired by a recent paper of SBE and Dr. Z.

Решение:

Давайте разберем задачу о стопках смартиков шаг за шагом.

Исходные данные

Предположим, у нас есть три стопки смартиков, представленных следующим образом:
- Стопка A: 5 смартиков
- Стопка B: 3 смартика
- Стопка C: 4 смартика

Таким образом, у нас есть набор: [5, 3, 4].

П...

1. Если две стопки стоят рядом и левая стопка выше правой, мы можем поменять их местами. 2. После этого мы можем съесть один смартик из более высокой стопки. Теперь давайте рассмотрим три различных способа, как можно съесть один смартик, следуя правилам. 1. Начнем с [5, 3, 4]. 2. Стопка A (5) больше, чем стопка B (3). Мы можем поменять их местами: [3, 5, 4]. 3. Теперь мы можем съесть один смартик из стопки A (5): [3, 4, 4]. 1. Начнем с [5, 3, 4]. 2. Стопка C (4) меньше, чем стопка A (5), и не может быть перемещена. Но мы можем поменять B и C: [5, 4, 3]. 3. Теперь мы можем съесть один смартик из стопки A (5): [4, 4, 3]. 1. Начнем с [5, 3, 4]. 2. Стопка A (5) больше, чем B (3). Меняем их местами: [3, 5, 4]. 3. Теперь меняем B (5) и C (4): [3, 4, 5]. 4. Теперь можем съесть один смартик из стопки C (5): [3, 4, 4]. Теперь давайте рассмотрим, как можно съесть все смартики из набора [5, 3, 4]. 1. : - [5, 3, 4] → [3, 5, 4] (съели из A) - [3, 4, 4] → [3, 4, 3] (съели из B) - [3, 3, 4] → [3, 3, 3] (съели из C) - [3, 3, 2] → [3, 2, 2] (съели из B) - [3, 2, 1] → [2, 2, 1] (съели из A) - [2, 1, 1] → [1, 1, 1] (съели из A) - [1, 0, 0] → [0, 0, 0] (съели из A) 2. : - [5, 3, 4] → [5, 4, 3] (съели из B) - [5, 3, 2] → [4, 3, 2] (съели из A) - [4, 2, 2] → [3, 2, 2] (съели из A) - [3, 1, 1] → [2, 1, 1] (съели из A) - [2, 0, 0] → [1, 0, 0] (съели из A) - [0, 0, 0] → [0, 0, 0] (съели из A) Можно съесть все смартики, если: - Сумма смартиков в стопках четная. - В каждой стопке количество смартиков не меньше, чем в соседней (или можно привести к такому состоянию). Таким образом, если у нас есть набор, где количество смартиков в каждой стопке можно упорядочить по убыванию, то мы можем съесть все смартики.

Не нашел нужную задачу?

Воспользуйся поиском

Выбери предмет