#include <bits/stdc++.h>
using namespace std;
bool cmp(const pair<pair<long long int, long long int>, long long> &x,
         const pair<pair<long long int, long long int>, long long> &y) {
  if (x.first.first != y.first.first) {
    return x.first.first < y.first.first;
  }
  if (x.first.first % 2 == 0)
    return x.first.second > y.first.second;
  else
    return x.first.second < y.first.second;
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);
  cout.tie(0);
  long long n;
  cin >> n;
  std::vector<pair<pair<long long int, long long int>, long long>> p;
  for (long long int i = 0; i < n; i++) {
    long long x, y;
    cin >> x >> y;
    p.push_back({{x / 1000, y}, i + 1});
  }
  sort(p.begin(), p.end(), cmp);
  for (auto i : p) {
    cout << i.second << " ";
  }
}
