Задача 17: Преобразование 1D Массива В 2D Массив

Напишите определение функции construct2DArray(original, m, n), которая принимает три аргумента:

  • original: Список целых чисел, представляющий 1D массив.
  • m: Целое число, количество строк в 2D массиве.
  • n: Целое число, количество столбцов в 2D массиве.

Функция должна возвращать 2D массив размером m на n, который составляется из элементов массива original. Элементы с индекса 0 по n-1 образуют первую строку, элементы с индекса n по 2n-1 образуют вторую строку, и так далее. Если невозможно разделить элементы на 2D массив с такими размерами, верните пустой массив.


Пример 1:

Вход:

original = [1, 2, 3, 4], m = 2, n = 2
  1. Исходный массив:

    original = [1, 2, 3, 4]
    
  2. Разбиваем массив на 2 части по 2 элемента:

    [1, 2]   [3, 4]
    
  3. Результат:

    [[1, 2],
     [3, 4]]
    

Пример 2:

Вход:

original = [1, 2, 3], m = 1, n = 3
  1. Исходный массив:

    original = [1, 2, 3]
    
  2. Разбиваем массив на 1 строку с 3 элементами:

    [1, 2, 3]
    
  3. Результат:

    [[1, 2, 3]]
    

Пример 3:

Вход:

original = [1, 2], m = 1, n = 1
  1. Исходный массив:

    original = [1, 2]
    
  2. Попытка разбить массив на строки, но это невозможно:

    Не можем разделить 2 элемента на массив 1x1
    
  3. Результат:

    []
    

0

Вы должны Войти или Зарегистрироваться чтобы оставлять комментарии