Cod sursa(job #2230806)

Utilizator PetyAlexandru Peticaru Pety Data 11 august 2018 16:17:16
Problema Tablete Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.99 kb
#include <bits/stdc++.h>

using namespace std;

ifstream fin("tablete.in");
ofstream fout("tablete.out");

int v[1002][1002], n;
int k;

int main()
{
  fin >> n >> k;
  if (k % 2 == 0) {
    int nr = 0;
    for (int i = 1; i <= n; i++)
      for (int j = 1; j <= k; j++)  {
        nr++;
        v[i][j] = nr;
      }
    for (int i = 1; i <= n; i++)
      for (int j = k + 1; j <= n; j++) {
        nr++;
        v[i][j] = nr;
      }
  }
  else {
    int nr = 0;
    for (int i = 1; i <= n; i++) {
      for (int j = 1; j <= k; j++) {
        nr++;
        v[i][j] = nr;
      }
    }
    for (int i = 1; i < n; i += 2)
      swap(v[i][k], v[i + 1][1]);
    for (int i = 1; i <= n; i++)
      for (int j = k + 1; j <= n; j++) {
        nr++;
        v[i][j] = nr;
      }
    if(n % 2)
      swap(v[n][k], v[1][k + 1]);
  }
  for (int i = 1; i <= n; i++) {
    for (int j = 1; j <= n; j++)
      fout << v[i][j] << " ";
    fout << "\n";
  }
  return 0;
}