• Помогите пожалуйста, а то я не уверена!! В очереди стоят мальчики и девочки. В начале каждой минуты, если за каким-то мальчиком стоит девочка, то он меняется с ней местами, пропуская ее вперед (при этом общее количество ребят в очереди не меняется).
    Вам дана очередь в виде последовательности букв M и D (начало очереди слева), определите, как она будет выглядеть через 9 минут.
    DMMDMDMDMMMDMMDDDDMM
    В качестве ответа выведите строку из заглавных латинских букв M и D (не разделяя их пробелами).
    Пример. Очередь MDD через минуту будет такой: DMD, а еще через минуту такой: DDM.

Ответы 1

  • # Код на ruby 2.2.3p173def 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 lineend# # Примеры примененияp zadanie("DMMDMDMDMMMDMMDDDDMM", 9)Вывод[1, "DMDMDMDMMMDMMDMDDDMM"][2, "DDMDMDMMMDMMDMDMDDMM"][3, "DDDMDMMMDMMDMDMDMDMM"][4, "DDDDMMMDMMDMDMDMDMMM"][5, "DDDDMMDMMDMDMDMDMMMM"][6, "DDDDMDMMDMDMDMDMMMMM"][7, "DDDDDMMDMDMDMDMMMMMM"][8, "DDDDDMDMDMDMDMMMMMMM"][9, "DDDDDDMDMDMDMMMMMMMM"]"DDDDDDMDMDMDMMMMMMMM"
    • Автор:

      ellis5
    • 5 лет назад
    • 0
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years