Вопрос задан 20.08.2023 в 16:06. Предмет Информатика. Спрашивает Барабанова Дарья.

В очереди стоят мальчики и девочки. В начале каждой минуты, если за каким-то мальчиком стоит

девочка, то он меняется с ней местами, пропуская ее вперед (при этом общее количество ребят в очереди не меняется). Вам дана очередь в виде последовательности букв M и D (начало очереди слева), определите, как она будет выглядеть через 10 минут. MMDMDDDDDMMDDDMDDDMD В качестве ответа выведите строку из заглавных латинских букв M и D (не разделяя их пробелами).
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Габбасов Владик.
# Код на ruby 2.2.3p173
def zadanie(line, time)
    line = line.gsub(/[^MD]/, "")
    time.times { |i|
        k = 0
        while k < line.size - 1 do
            if line[k..k + 1] == "MD"
                line[k], line[k + 1] = line[k + 1], line[k]
                k+=1
            end
            k+=1
        end
        p [i+1,line]
    }
    return line
end
# # Примеры применения
# p zadanie("MDDDMMDMDDDMMMMMMDDM", 10)
p zadanie("MMDMDDDDDMMDDDMDDDMD", 10)

Вывод
[1, "MDMDMDDDDMDMDDDMDDDM"]
[2, "DMDMDMDDDDMDMDDDMDDM"]
[3, "DDMDMDMDDDDMDMDDDMDM"]
[4, "DDDMDMDMDDDDMDMDDDMM"]
[5, "DDDDMDMDMDDDDMDMDDMM"]
[6, "DDDDDMDMDMDDDDMDMDMM"]
[7, "DDDDDDMDMDMDDDDMDMMM"]
[8, "DDDDDDDMDMDMDDDDMMMM"]
[9, "DDDDDDDDMDMDMDDDMMMM"]
[10, "DDDDDDDDDMDMDMDDMMMM"]
"DDDDDDDDDMDMDMDDMMMM"

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Давайте разберемся с этим шаг за шагом. У нас есть начальная очередь:

MMDMDDDDDMMDDDMDDDMD

Для удобства, я обозначу номера позиций в очереди от 1 до 20. Теперь давайте посмотрим, как будет происходить обмен на каждой минуте:

  1. Минута:

    • Позиция 1: MMDMDDDDDMMDDDMDDDMD
    • Мальчик (M) на позиции 1 не может обменяться, так как за ним нет девочки (D).
    • Результат: MMDMDDDDDMMDDDMDDDMD
  2. Минута:

    • Позиция 2: MMDMDDDDDMMDDDMDDDMD
    • Мальчик (M) на позиции 2 может обменяться с девочкой (D) на позиции 3.
    • Результат: MDMDMDDDDMMDDDMDDDMD
  3. Минута:

    • Позиция 3: MDMDMDDDDMMDDDMDDDMD
    • Мальчик (M) на позиции 3 не может обменяться, так как за ним нет девочки (D).
    • Результат: MDMDMDDDDMMDDDMDDDMD
  4. Минута:

    • Позиция 4: MDMDMDDDDMMDDDMDDDMD
    • Мальчик (M) на позиции 4 не может обменяться, так как за ним нет девочки (D).
    • Результат: MDMDMDDDDMMDDDMDDDMD
  5. Минута:

    • Позиция 5: MDMDMDDDDMMDDDMDDDMD
    • Мальчик (M) на позиции 5 не может обменяться, так как за ним нет девочки (D).
    • Результат: MDMDMDDDDMMDDDMDDDMD
  6. Минута:

    • Позиция 6: MDMDMDDDDMMDDDMDDDMD
    • Мальчик (M) на позиции 6 может обменяться с девочкой (D) на позиции 7.
    • Результат: MDMDMDDDMDMDDDMDDDMD
  7. Минута:

    • Позиция 7: MDMDMDDDMDMDDDMDDDMD
    • Мальчик (M) на позиции 7 не может обменяться, так как за ним нет девочки (D).
    • Результат: MDMDMDDDMDMDDDMDDDMD
  8. Минута:

    • Позиция 8: MDMDMDDDMDMDDDMDDDMD
    • Мальчик (M) на позиции 8 не может обменяться, так как за ним нет девочки (D).
    • Результат: MDMDMDDDMDMDDDMDDDMD
  9. Минута:

    • Позиция 9: MDMDMDDDMDMDDDMDDDMD
    • Мальчик (M) на позиции 9 может обменяться с девочкой (D) на позиции 10.
    • Результат: MDMDMDDDMDMDDMDDDDMD
  10. Минута:

  • Позиция 10: MDMDMDDDMDMDDMDDDDMD
  • Мальчик (M) на позиции 10 не может обменяться, так как за ним нет девочки (D).
  • Результат: MDMDMDDDMDMDDMDDDDMD

Через 10 минут очередь будет выглядеть так: MDMDMDDDMDMDDMDDDDMD.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос