Sari la conținut
Zece la Info
Probleme

Bacalaureat Antrenament 2020, Varianta 8, S3.2 - Deplasare circulara pe linia k

Medie 1500 ms 64 MB#bacalaureat#2020#antrenament#subiectul3

Scrieti un program C/C++ care citeste de la tastatura numere naturale: n (n in [2,20]), k (k in [1,n]) si n*n numere din intervalul [0,10^9], elemente ale unui tablou bidimensional cu n linii si n coloane, numerotate incepand de la 1. Programul transforma tabloul in memorie, deplasand circular spre stanga, cu cate o pozitie, toate elementele situate pe linia k, in stanga diagonalei principale.

Elementele tabloului obtinut sunt afisate pe ecran, fiecare linie pe cate o linie a ecranului, cu elementele fiecarei linii separate prin cate un spatiu.

Exemplu: pentru n=6, k=4 si tabloul 1 2 3 4 5 6 6 7 8 9 0 1 2 4 6 8 0 2 1 3 5 7 9 5 6 2 7 4 5 7 3 9 4 8 5 7 se obtine tabloul 1 2 3 4 5 6 6 7 8 9 0 1 2 4 6 8 0 2 3 5 1 7 9 5 6 2 7 4 5 7 3 9 4 8 5 7

Date de intrare
Se citesc n, k, apoi elementele tabloului cu n linii si n coloane.
Date de iesire
Tabloul dupa deplasarea circulara la stanga a segmentului din stanga diagonalei pe linia k.
Restrictii
2 <= n <= 20, 1 <= k <= n

Exemple

Exemplul 1

Intrare

6 4
1 2 3 4 5 6
6 7 8 9 0 1
2 4 6 8 0 2
1 3 5 7 9 5
6 2 7 4 5 7
3 9 4 8 5 7

Iesire

1 2 3 4 5 6
6 7 8 9 0 1
2 4 6 8 0 2
3 5 1 7 9 5
6 2 7 4 5 7
3 9 4 8 5 7

Exemplul 2

Intrare

2 1
1 2
3 4

Iesire

1 2
3 4

Vrei să rezolvi problema?

Creează-ți un cont gratuit ca să scrii cod în editor, să trimiți soluții la evaluator și să vezi indicațiile.