#define _USE_MATH_DEFINES #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; typedef long long ll; typedef unsigned long long ull; typedef pair i_i; typedef pair ll_i; typedef pair d_i; typedef pair ll_ll; typedef pair d_d; struct edge { int u, v; ll w; }; typedef complex C; ll MOD = 1000000007; ll _MOD = 1000000009; double EPS = 1e-10; int main() { int n; while (cin >> n) { vector > a(n); for (int i = 0; i < n; i++) { int x, y; cin >> x >> y; i_i p(y - x, y); a[i] = make_pair(p, i); } sort(a.begin(), a.end()); for (int i = 0; i < n; i++) cout << a[i].second << (i + 1 < n ? ' ' : '\n'); } }