Pagini recente » Cod sursa (job #2533220) | Cod sursa (job #2594206) | Cod sursa (job #640011) | Cod sursa (job #2967793) | Cod sursa (job #890110)
Cod sursa(job #890110)
#include <cstdio>
using namespace std;
int El[1001][1001],i,j,nr,k,n;
bool Viz[10000005];
int main(){
freopen("tablete.in","r",stdin);
freopen("tablete.out","w",stdout);
scanf("%d %d", &n, &k );
nr=1;
for( j=1; j<k-1; ++j ){
for( i=1; i<=n; ++i ){
Viz[ nr ] = 1;
El[i][j]=nr++;
}
}
// completam coloanele k-1,k
if( nr&1 )
;
else{
Viz[ El[ n-1 ][ k-2 ] ] = 0;
El[ n-1 ][ k-2 ] = nr+1;
Viz[ nr+1 ] = 1;
nr-=3;
if( nr < 1 )
nr=1;
}
for( i=1; i<=n; ++i ){
for( j=k-1; j<=k; ++j ){
while( Viz[ nr ] )
nr++;
Viz[ nr ] = 1;
El[i][j]=nr++;
}
}
for( j=k+1; j<=n; ++j ){
for( i=1; i<=n; ++i ){
while( Viz[ nr ] )
nr++;
Viz[ nr ] = 1;
El[i][j]=nr++;
}
}
for( i=1; i<=n; ++i ){
for( j=1; j<=n; ++j )
printf("%d ",El[i][j]);
printf("\n");
}
return 0;
}