Submission #1148824

#TimeUsernameProblemLanguageResultExecution timeMemory
1148824LinkedArrayTowers (NOI22_towers)C++17
0 / 100
340 ms13072 KiB
#include <bits/stdc++.h>
using namespace std;

using ll = long long;
#define pb push_back

vector<bool> build_tower;
vector<pair<pair<int, int>, int>> coords;

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

  int n, i, x, y;

  cin >> n;

  coords = vector<pair<pair<int, int>, int>>(n + 2);
  coords[0] = {{-1, -1}, 0};
  for (i = 1; i <= n; i++) {
    cin >> coords[i].first.first >> coords[i].first.second;
    coords[i].second = i;
  }
  coords[n + 1] = {{-1, -1}, 0};

  sort(coords.begin() + 1, coords.end() - 1);

  build_tower = vector<bool>(n + 1, false);
  for (i = 1; i <= n; i++) {
    if (coords[i].first.first != coords[i + 1].first.first) {
      build_tower[coords[i].second] = true;
    } else if (coords[i].first.first != coords[i - 1].first.first) {
      build_tower[coords[i].second] = true;
    }
  }

  sort(coords.begin() + 1, coords.end(),
       [] (pair<pair<int, int>, int> a, pair<pair<int, int>, int> b) {
         if (a.first.second == b.first.second) {
           return a.first.first < b.first.first;
         }
         return a.first.second < b.first.second;
       });

  for (i = 1; i <= n; i++) {
    if (coords[i].first.first != coords[i + 1].first.first) {
      build_tower[coords[i].second] = true;
    } else if (coords[i].first.first != coords[i - 1].first.first) {
      build_tower[coords[i].second] = true;
    }
  }

  for (i = 1; i <= n; i++) {
    cout << (build_tower[i] ? "1" : "0");
  }
  return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...