Объединение массивов: concatenate и stack
Содержание курса
concatenate vs stack на одномерных векторах: разница в ndim и shape
Что уже дано
Проверяющая система запускает вашу программу и подаёт данные через stdin. Никаких заранее созданных переменных нет — вы читаете всё сами.
Что нужно сделать
Напишите программу, которая наглядно показывает разницу между np.concatenate и np.stack на одномерных массивах:
- Читает из
stdinодну строку с двумя целыми числами:nиk— длина каждого изkодномерных векторов. - Создаёт
kодномерных массивов:i-й массив (iот0доk-1) равенnp.arange(i * n, (i + 1) * n)— shape(n,). - Объединяет все
kмассивов черезnp.concatenate(..., axis=0)→cat. Выводит строку:cat shape=<shape> ndim=<ndim>. - Складывает все
kмассивов черезnp.stack(..., axis=0)→st0. Выводит строку:st0 shape=<shape> ndim=<ndim>. - Складывает все
kмассивов черезnp.stack(..., axis=1)→st1. Выводит строку:st1 shape=<shape> ndim=<ndim>. - Выводит строку
ndim_diff=<d>, где<d>— разницаst0.ndim - cat.ndim.
Shape выводите в виде Python-кортежа, например (6,) или (2, 3).
Ввод и вывод
Программа читает stdin и пишет в stdout.
Формат ввода
Одна строка: два целых числа n k, разделённых пробелом. Гарантируется n >= 2, k >= 2.
Формат вывода
Четыре строки:
cat shape=<shape> ndim=<ndim>
st0 shape=<shape> ndim=<ndim>
st1 shape=<shape> ndim=<ndim>
ndim_diff=<d>
О данных в ответах
Используйте учебные данные. Не вставляйте пароли, токены, ключи доступа, паспортные и банковские данные, а также персональные данные других людей. Политика обработки данных.
- Тест 1Ввод
3 2
Ожидаемый выводcat shape=(6,) ndim=1 st0 shape=(2, 3) ndim=2 st1 shape=(3, 2) ndim=2 ndim_diff=1
Как проверяется решение
Сравнение вывода: Правила исходной проверяющей системы. Интерактивный запуск не влияет на оценку. Лимит сессии — 5 минут, процессорного времени — 10 секунд.
Отправьте решение, чтобы увидеть результаты тестов.
