/* vim: set ts=4 sts=4 sw=4 si foldmethod=marker: */ // {{{ stock programming challenge garbage // IO #include #include #include #include #include // Utility #include #include #include #include #include #include // Data structures #include #include #include #include #include #include #include #include // I want easy access to STL and things like hash_map using namespace std; using namespace std::tr1; using namespace __gnu_cxx; // Needed for hash_map namespace __gnu_cxx { template<> struct hash { size_t operator()(const std::string& x) const { return hash()(x.c_str()); } }; } typedef pair pid; typedef vector vpid; // }}} bool sortcmp(const pid& l, const pid& r) { return l.second < r.second; } int main() { int cases; cin >> cases; while (cases--) { int lines; cin >> lines; vpid data; int day(0); while (lines--) { double time, fine; cin >> time >> fine; data.push_back(pid(++day, time / fine)); } sort(data.begin(), data.end(), sortcmp); for (vpid::const_iterator i(data.begin()), ie(data.end()); i != ie; ++i) { cout << (*i).first; if (i + 1 != ie) cout << " "; } cout << endl; if (cases) cout << endl; } return 0; }