#include <bits/stdc++.h>
using namespace std;
int main() {
  int n;
  scanf("%d", &n);
  vector<pair<int, int> > v[1000];
  for (int i = 0; i < n; i++) {
    int x, y;
    scanf("%d%d", &x, &y);
    v[y / 1001].push_back(make_pair(x, i + 1));
  }
  for (int i = 0; i < 1000; i++) {
    sort(v[i].begin(), v[i].end());
    if (i % 2) reverse(v[i].begin(), v[i].end());
  }
  for (int i = 0; i < 1000; i++)
    for (int j = 0; j < v[i].size(); j++) printf("%d ", v[i][j].second);
}
