Pagini recente » Cod sursa (job #1159506) | Cod sursa (job #2369507) | Cod sursa (job #1379099) | Cod sursa (job #1335810) | Cod sursa (job #2229483)
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef long double ld;
const int N=1000+5;
int n,k;
int v[N][N];
inline void afis() {
for(int i=1;i<=n;i++) {
for(int j=1;j<=n;j++) {
cout<<v[i][j]<<" ";
}
cout<<"\n";
}
exit(0);
}
bool viz[N*N];
int main() {
ios_base::sync_with_stdio(false);
cin.tie(0);
freopen("tablete.in","r",stdin);
freopen("tablete.out","w",stdout);
cin>>n>>k;
if(k%2==0) {
int cnt=0;
for(int i=1;i<=n;i++) {
for(int j=1;j<=k;j++) {
v[i][j]=++cnt;
}
}
for(int i=1;i<=n;i++) {
for(int j=k+1;j<=n;j++) {
v[i][j]=++cnt;
}
}
afis();
}
else {
int cnt=1;
for(int i=1;i<=n;i++) {
v[i][1]=cnt;
cnt+=2;
viz[v[i][1]]=1;
}
cnt=1;
for(int r=1;r<=n;r++) {
for(int c=2;c<=k;c++) {
while(viz[cnt]) {
cnt++;
}
v[r][c]=cnt;
viz[v[r][c]]=1;
}
}
for(int r=1;r<=n;r++) {
for(int c=k+1;c<=n;c++) {
while(viz[cnt]) {
cnt++;
}
v[r][c]=cnt;
viz[v[r][c]]=1;
}
}
afis();
}
return 0;
}
/**
**/