#include using namespace std; typedef long long ll; #define dump(x) cout << #x << " = " << (x) << endl #define YES(n) cout << ((n) ? "YES" : "NO" ) << endl #define Yes(n) cout << ((n) ? "Yes" : "No" ) << endl #define POSSIBLE(n) cout << ((n) ? "POSSIBLE" : "IMPOSSIBLE" ) << endl #define Possible(n) cout << ((n) ? "Possible" : "Impossible" ) << endl #define rep(i, n) REP(i, 0, n) // 0, 1, ..., n-1 #define REP(i, x, n) for(int i = x; i < n; i++) // x, x + 1, ..., n-1 #define FOREACH(x,a) for(auto& (x) : (a) ) #define ALL(v) (v).begin() , (v).end() #define RALL(v) (v).rbegin(), (v).rend() #define COUT(x) cout << (x) << endl template inline bool chmax(T& a, T b) { if (a < b) { a = b; return 1; } return 0; } template inline bool chmin(T& a, T b) { if (a > b) { a = b; return 1; } return 0; } int main(){ cin.tie(0); ios::sync_with_stdio(false); int n; cin >> n; vector>> pii(n); rep(i, n) { cin >> pii[i].second.first >> pii[i].second.second; pii[i].first = (double)pii[i].second.first / (double)pii[i].second.second; } sort(RALL(pii)); rep(i, n) { cout << pii[i].second.first << " " << pii[i].second.second << endl; } }