Submission #1361898

#TimeUsernameProblemLanguageResultExecution timeMemory
1361898edoMonster-Go (EGOI25_monstergo)C++20
18 / 100
0 ms344 KiB
#include <bits/stdc++.h>

using namespace std;
using ll = long long;

// :(
void print_vec(vector<int> v) {
  // sort(v.begin(), v.end());
  // v.erase(unique(v.begin(), v.end()), v.end());
  for (int x : v)
    cout << x << " ";
  cout << "\n";
}

void solve(int n) {
  if (n <= 4) {
    for (int i = 0, num = 0; i < n; ++i) {
      for (int j = 0; j < 12; ++j)
        cout << num++ << " ";
      cout << "\n";
    }
    return;
  }

  int done = 0;
  int start = 0;

  while (n - done >= 4) {
    array<vector<int>, 4> cur;
    for (int i = 0; i < 4; ++i)
      cur[i].reserve(12);

    for (int who = 0; who < 4; ++who) {
      for (int j = 0; j < 16; ++j) {
        if (j % 4 != who)
          cur[who].push_back((start + j) % 50);
      }
    }

    for (int i = 0; i < 4; ++i)
      print_vec(cur[i]);

    done += 4;
    start += 16;
  }

  while (done < n) {
    vector<int> v;
    v.reserve(12);
    for (int j = 0; j < 12; ++j)
      v.push_back((start + j) % 50);
    print_vec(v);
    done++;
    start += 12;
  }
}

int main() {
  ios::sync_with_stdio(false);
  cin.tie(nullptr);

  int n;
  cin >> n;
  solve(n);

  return 0;
}
#Result Execution timeMemoryGrader output
Fetching results...