Ruby/Задачник: различия между версиями
Содержимое удалено Содержимое добавлено
/* Дан целочисленный массив. Вывести номер первого из тех его элементов, которые удовлетворяют двойному неравенству: A[0] < A[i] < A[-1]. Если таки… |
DannyS712 (обсуждение | вклад) м <source> -> <syntaxhighlight> (phab:T237267) |
||
Строка 117:
'''Решение:'''
<
a = [1, 2, 4, 5, 2, 1, 6, 11]
a.select.with_index { |_, index| index.even? } + a.select.with_index { |_, index| index.odd? }
# => [1, 4, 2, 6, 2, 5, 1, 11]
</syntaxhighlight>
Или так:
<
a = [1, 2, 4, 5, 2, 1, 6, 11]
(a.partition.with_index { |_, index| index.even?}).flatten
# => [1, 4, 2, 6, 2, 5, 1, 11]
</syntaxhighlight>
=== Дан целочисленный массив. Необходимо вывести вначале его элементы с нечетными индексами, а затем - четными. ===
Строка 135:
'''Решение:'''
<
a = [1, 2, 4, 5, 2, 1, 6, 11]
a.select.with_index { |_, index| index.odd? } + a.select.with_index { |_, index| index.even? }
# => [2, 5, 1, 11, 1, 4, 2, 6]
</syntaxhighlight>
=== Дан целочисленный массив. Вывести номер первого из тех его элементов, которые удовлетворяют двойному неравенству: A[0] < A[i] < A[-1]. Если таких элементов нет, то вывести [ ]. ===
Строка 145:
'''Решение:'''
<
a = [1, 5, 2, 3, 4]
a.index(a.select { |num| a[0] < num && num < a[-1] }.first) || []
# => 2
</syntaxhighlight>
А можно и так:
<
a = [1, 7, 4, 5, 2, 1, 6, 4]
a.index { |i| a[0] < i && i < a[-1] } || []
# => 4
</syntaxhighlight>
== Задачи Малого ЦКТ ГОУ МГИУ (подготовительные курсы) http://sctc.msiu.ru ==
|