Двумерные массивы. Помоите с задачей. С++

Ваша задача — заполнить двумерный массив из NN строк и NN столбцов следующим образом: первая строка является упорядоченным набором чисел от 1 до NN, каждая следующая является цикличным сдвигом влево предыдущей строки.

В чем именно проблема? Что получилось, что не получилось?

Оказывается это наша задача, а не задача для ТС ))

Кто прочел, для того и задача ))

Добрый день, мне помогли решить задачу, но я не понимаю как работает эта строка: arr[i][j] = (i + j) % n + 1;
и можно по-другому решить?

#include <iostream>
using namespace std;
int main() {
  int n, m = 0;
  cin >> n;
  int arr[n][n];
  for (int i = 0; i < n; i++) {
    for (int j = 0; j < n; j++) {
      cin >> arr[i][j];
    }
  }
  for (int i = 0; i < n; i++) {
    for (int j = 0; j < n; j++) {
      arr[i][j] = (i + j) % n + 1;
    }
  }
  for (int i = 0; i < n; i++) {
    for (int j = 0; j < n; j++) {
      cout << arr[i][j] << " ";
    }
 cout << endl; }
}

Присваивает в ячейку массива то число, что вычислено справа )
Видимо так получается тот сдвиг, о котором просили. % это остаток от деления.

Непонятно зачем ввод если просят не самому вводить, а

Можно. Ваша задача решалась три года назад тремя способами

Первый
#include <iostream>
int** matrix_fill(size_t N);
void  matrix_free(int** mat, size_t N);
 
int main(void){
    size_t N = 6;
    int** mat = matrix_fill(N);
    for(size_t i = 0; i < N; ++i){
        for(size_t j = 0; j < N; ++j)
            std::cout << mat[i][j] << ' ';
        std::cout << std::endl;
    }
    matrix_free(mat, N);
    std::cin.get();
    return 0;
}
 
//заполнение по заданию
int** matrix_fill(size_t N){
    int** mat = new int*[N];
    for(size_t i = 0; i < N; ++i){
        mat[i] = new int[N];
        for(size_t j = 0; j < N; ++j)
            mat[i][j] = (i + j) % N + 1;
    }
    return mat;
}
 
//удаление
void matrix_free(int** mat, size_t N){
    for(size_t i = 0; i < N; ++i)
        delete[] mat[i];
    delete[] mat;
}

Источник: Сдвиг двумерного массива влево

Спасибо всем за помощь!