Pagini recente » Cod sursa (job #1506432) | Cod sursa (job #1053470) | Cod sursa (job #2275026) | Cod sursa (job #2180660) | Cod sursa (job #605131)
Cod sursa(job #605131)
# include <fstream>
using namespace std;
ifstream f ("tablete.in");
ofstream g ("tablete.out");
int n, k;
int a[1001][1001];
void p1 ()
{
int nr = 0;
if (k % 2 == 0)
{
for (int i = 1; i <= n; ++i)
for (int j = 1; j <= k; ++j)
a[i][j] = ++nr;
for (int i = 1; i <= n; ++i)
for (int j = k + 1; j <= n; ++j)
a[i][j] = ++nr;
}
}
void p2 ()
{
int nr = -1, var = k * 2 - 2;
if (k % 2 == 1 && n % 2 == 0)
{
for (int i = 1; i <= n; )
{
for (int j = 1; j < k; ++j)
a[i][j] = (nr += 2);
a[i][k] = ++nr;
int vnr = nr;
nr -= var;
++i;
for (int j = 1; j < k - 1; ++j)
a[i][j] = (nr += 2);
a[i][k - 1] = ++vnr;
a[i][k] = ++vnr;
nr = vnr - 1;
++i;
}
++nr;
for (int i = 1; i <= n; ++i)
for (int j = k + 1; j <= n; ++j)
a[i][j] = ++nr;
}
}
void p3 ();
int main ()
{
f >> n >> k;
p1 ();
p2 ();// p3 ();
for (int i = 1; i <= n; ++i, g << '\n')
for (int j = 1; j <= n; ++j)
g << a[i][j] << ' ';
g.close ();
return 0;
}