Помогите пожалуйста, а то я не уверена!! В очереди стоят мальчики
Помогите пожалуйста, а то я не уверена!! В очереди стоят юноши и девченки. В начале каждой минуты, если за каким-то мальчиком стоит девченка, то он меняется с ней местами, пропуская ее вперед (при этом общее количество ребят в очереди не изменяется).
Вам дана очередь в виде последовательности букв M и D (начало очереди слева), обусловьте, как она будет смотреться через 9 минут.
DMMDMDMDMMMDMMDDDDMM
В качестве ответа выведите строчку из заглавных латинских букв M и D (не деля их пробелами).
Пример. Очередь MDD через минуту будет такой: DMD, а еще через минутку таковой: DDM.
2 ответа
Ульяна Ланбинг
Код на ruby 2.2.3p173
def zadanie(line, time)
line = line.gsub(/[^MD]/, "")
time.times i
k = 0
while k lt; 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("DMMDMDMDMMMDMMDDDDMM", 9)
Вывод
[1, "DMDMDMDMMMDMMDMDDDMM"]
[2, "DDMDMDMMMDMMDMDMDDMM"]
[3, "DDDMDMMMDMMDMDMDMDMM"]
[4, "DDDDMMMDMMDMDMDMDMMM"]
[5, "DDDDMMDMMDMDMDMDMMMM"]
[6, "DDDDMDMMDMDMDMDMMMMM"]
[7, "DDDDDMMDMDMDMDMMMMMM"]
[8, "DDDDDMDMDMDMDMMMMMMM"]
[9, "DDDDDDMDMDMDMMMMMMMM"]
"DDDDDDMDMDMDMMMMMMMM"
def zadanie(line, time)
line = line.gsub(/[^MD]/, "")
time.times i
k = 0
while k lt; 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("DMMDMDMDMMMDMMDDDDMM", 9)
Вывод
[1, "DMDMDMDMMMDMMDMDDDMM"]
[2, "DDMDMDMMMDMMDMDMDDMM"]
[3, "DDDMDMMMDMMDMDMDMDMM"]
[4, "DDDDMMMDMMDMDMDMDMMM"]
[5, "DDDDMMDMMDMDMDMDMMMM"]
[6, "DDDDMDMMDMDMDMDMMMMM"]
[7, "DDDDDMMDMDMDMDMMMMMM"]
[8, "DDDDDMDMDMDMDMMMMMMM"]
[9, "DDDDDDMDMDMDMMMMMMMM"]
"DDDDDDMDMDMDMMMMMMMM"
, оставишь ответ?
Похожие вопросы
-
Вопросы ответы
Новое
NEW
Статьи
Информатика
Статьи
Последние вопросы
Игорь 14 лет назад был на 8 лет моложе, чем его
Математика.
Два тела массами m1 и m2 находящие на расстоянии R друг
Физика.
В сосуде 4целых одна пятая литр воды что бы заполнить сосуд
Математика.
Двум малярам Диме И Олегу поручили выкрасить фасад дома они разделили
Разные вопросы.
найти порядковый номер 41Э если в ядре 20 нейтронов
Разные вопросы.
в ряду натуральных чисел 3, 8, 10, 24, … 18 одно
Математика.
Предприятие по производству с/хоз продукции на производство затратило 3527000 руб Валовый
Разные вопросы.
Математика, задано на каникулы. ВАРИАНТ 1004
НОМЕР 1,2,3,4,5,6,7,8.
Математика.
Имеются три конденсатора емкостью С1=1мкФ, С2=2мкФ и С3=3мкФ. Какую наименьшую емкость
Физика.
Из точки м выходят 3 луча MP MN и MK причём
Геометрия.
Облако тегов