Преобразовать матрицу в одномерный массив змейкой

По какому алгоритму нужно сделать

Нужно ввести матрицу и потом змейкой вывести в одномерный массив


Ответы (1 шт):

Автор решения: Павел Ериков

Самое просто решение:

const int row = 5;
const int col = 5;
const int size = row * col;
int matrix[5][5];

int c = 1;
for (int i = 0; i < row; ++i)
    for (int j = 0; j < col; ++j)
        matrix[i][j] = c++;

int arr[size];
c = 0;

for (int i = 0; i < col; ++i) {
    if (i % 2 == 0)
        for (int j = 0; j < row; ++j)
            arr[c++] = matrix[j][i];
    else
        for (int j = row - 1; j >= 0; --j)
            arr[c++] = matrix[j][i];
}

for (int i = 0; i < size; ++i)
    cout << arr[i] << " ";
→ Ссылка