Pagini recente » Cod sursa (job #1587740) | Cod sursa (job #1956069) | Atasamentele paginii pregatire_sibiu2 | Cod sursa (job #1756056) | Cod sursa (job #585514)
Cod sursa(job #585514)
#include<cstdio>
int n, k, p, i, j, a[1001][1001], x, c, t, r;
int main()
{
freopen("tablete.in", "r", stdin);
freopen("tablete.out", "w", stdout);
scanf("%d %d", &n, &k);
p=1;
for(i=1; i<=n; ++i)
for(j=1; j<=k; ++j) if(!a[i][j] && j!=k) { a[i][j]=p;
++p;
}
else if(j==k) if(p%2==0) { a[i][j]=p;
++p;
}
else { a[i][j]=p+1;
a[i+1][1]=p;
p+=2;
}
c=1;
for(i=1; i<=n; ++i)
{ while(c<=x) for(j=1; j<=n; ++j) if(a[i][j]==c) { ++c;
i=1;
j=n+1;
}
else for(t=1; t<=n; ++t)
for(r=k+1; r<=n; ++r) if(c>a[t][r-1]) { a[t][r]=c;
t=n+1;
r=n+1;
++c;
i=1;
j=n+1;
}
}
for(i=1; i<=n; ++i)
for(j=k+1; j<=n; ++j) { a[i][j]=p;
++p;
}
for(i=1; i<=n; ++i)
{ for(j=1; j<=n; ++j) printf("%d ", a[i][j]);
printf("\n");
}
fclose(stdin);
fclose(stdout);
return 0;
}