PermCol

Se dă o matrice cu n linii și m coloane și elemente numere naturale. Să se permute coloanele matricei circular spre stânga cu o poziție.

Date de intrare

Programul citește de la tastatură numerele n şi m, iar apoi n*m numere naturale, separate prin spații, reprezentând elementele matricei, linie cu linie.

Date de ieșire

Programul afișează pe ecran elementele matricei transformate, câte un linie a matricei pe o linie a ecranului, elementele de pe o linie fiind separate prin câte un spațiu.

Restricții și precizări

  • 1 ≤ m, n ≤ 100
  • elementele matricei vor fi mai mici decât 1.000.000

Exemplu

Date de intrare

4 6
4 20 15 23 18 9 
1 8 23 22 14 18 
17 15 13 18 12 15 
3 18 8 20 12 5 

Date de ieșire

20 15 23 18 9 4 
8 23 22 14 18 1 
15 13 18 12 15 17 
18 8 20 12 5 3
#include <iostream>
using namespace std;

int n,m,k,a[101][101], v[101];

int main()
{
    cin >> n >> m;
    for(int i = 1 ; i <= n ; ++i)
        for(int j = 1 ; j <= m ; ++j)
            cin >> a[i][j];
    
    for(int i = 1 ; i <= n ; ++i)
        v[i] = a[i][1];
    for(int i =1 ; i <= n ; ++i)
        for(int j = 1 ; j < m ; j++)
            a[i][j] = a[i][j+1];
    for(int i = 1 ; i <= n ; ++i)
        a[i][m] = v[i];
    
    for(int i = 1 ; i <= n ; ++i)
    {
        for(int j = 1 ; j <= m ; ++j)
            cout << a[i][j] << " ";
        cout << endl;
    }
    return 0;
}