#include <bits/stdc++.h>
using namespace std;
const int N = 2e5 + 10;
const int maxN = 1e6;
const long long MOD = 1e9 + 7;
const long long oo = 1e18;
const int S = 1e3;
const int limi = 1e9 + 1;
vector<int> A[S + 1][S + 1];
void Print(vector<int> a) {
  for (int i : a) cout << i << ' ';
}
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  int t;
  cin >> t;
  for (int i = 1; i <= t; i++) {
    int u, v;
    cin >> u >> v;
    A[u / S][v / S].push_back(i);
  }
  for (int i = 0; i <= 1000; i++)
    if (i & 1) {
      for (int j = 0; j <= 1000; j++) Print(A[i][j]);
    } else {
      for (int j = 1000; j >= 0; j--) Print(A[i][j]);
    }
}
