Как известно, обычно брюки состоят из 2-ух штанин. Однако собачке нужны,

Как известно, обычно брюки состоят из 2-ух штанин. Но собачке необходимы, к примеру, теснее брюки из 5 штанин (для 4-х лап и хвоста), а сороконожке штаны с 40 штанинами.

У Пети живет Зверек, у которого M лап. Иногда когда на улице неподражаемо холодно, чтоб Зверек не простыл, на него посещает необходимо надеть несколько штанов, чтобы на каждой лапе было насажено по несколько штанин.

Петина мама оставила Пете N штанов, имеющих соответственно K1, K2, , KN штанин, наказав ему надеть на Зверька их все. Петя желает надеть на Зверька брюки так, чтоб на самой утепленной лапе оказалось как можно меньше штанин, но при этом все оставленные матерью штаны были надеты на зверька. Любые штаны можно надевать на хоть какой набор лап (любая лапа встречается в наборе не более одного раза).

Помогите ему напишите программку, которая для каждых штанов укажет, на какие лапы обязаны быть насажены их штанины. Имейте в виду, что две штанины одних и тех же штанов не могут быть насажены на одну и ту же лапу (в то время как штанины разных штанов могут быть насажены на одну и ту же лапу).

Входные данные
Вводится поначалу число M, а потом число N (1 M 100, 1 N 100). Дальше вводятся N чисел Ki, обозначающих число штанин у оставленных матерью штанов (1 Ki M).

Выходные данные
Выведите N строк, в i-ой строке обязано быть выведено Ki разных чисел, означающих номера лап Зверька, на которые обязаны быть насажены штанины i-ых штанов. Лапы Зверя нумеруются естественными числами от 1 до M. Если разыскиваемых ответов несколько, то выведите хоть какой из их.
0

Задать свой вопрос
Денис Сытченко
а при этом тут самая утепленная лапа?
1 ответ
Код на ruby 2.2.3p173
def wearTrousersOnTheBeast(m, ks)
  leg = 0
  ks.each k
    if not k.between?(1,m)
      puts "Ошибочные брюки k"
      next
    end

    legs = []
    for i in 1..k
      leg = (leg + 1 gt; m) ? 1 : leg + 1
      legs lt;lt; leg
    end
    p legs
 
end
Примеры применения
wearTrousersOnTheBeast(4, [2,4,3,1,5])
wearTrousersOnTheBeast(10, [2,4,3,1,5])
, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт