Cerinţa
Scrieţi un program care citeşte de la tastatură doua numere naturale n
şi k
şi construieşte în memorie o matrice cu n
linii şi n
coloane formată numai din valori 1
, 2
, 3
şi 4
astfel încât: elementele aflate la intersecţia primelor k
linii cu primele k
coloane sunt egale cu 1
, elementele aflate la intersecţia primelor k
linii cu ultimele n-k
coloane sunt egale cu 2
, elementele aflate la intersecţia ultimelor n-k
linii cu primele k
coloane sunt egale cu 3
, elementele aflate la intersecţia ultimelor n-k
linii cu ultimele n-k
coloane sunt egale cu 4
.
Date de intrare
Programul citește de la tastatură numerele n
şi k
.
Date de ieşire
Programul afișează pe ecran matricea construită, câte o linie a matricei pe câte o linie a ecranului, elementele fiecărei linii fiind separate prin câte un spaţiu.
Restricţii şi precizări
2≤n≤24
0<k<n
Exemplu
Intrare
5 3
Ieșire
1 1 1 2 2 1 1 1 2 2 1 1 1 2 2 3 3 3 4 4 3 3 3 4 4
#include <bits/stdc++.h> using namespace std; int main() { int n,k; cin >> n >> k; for(int i = 1 ; i <= n ; ++i) { for(int j = 1 ; j <= n ; ++j) { if(i <= k && j <= k) cout << 1 <<" "; else if(i <= k && j > k) cout << 2 <<" "; else if(i > k && j <= k) cout << 3 <<" "; else cout << 4 <<" "; } cout << endl; } }