xuanquang1999

Sorting Trouble

Nov 22nd, 2015
228
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.21 KB | None | 0 0
  1. //84104971101048411497 - Can you guess what does this mean?
  2. using namespace std;
  3. #include <bits/stdc++.h>
  4. #define mapii map<int, int>
  5. #define debug(a) cout << #a << ": " << a << endl
  6. #define fdto(i, r, l) for(int i = (r); i >= (l); --i)
  7. #define fto(i, l, r) for(int i = (l); i <= (r); ++i)
  8. #define forit(it, type, var) for(type::iterator it = var.begin(); it != var.end(); it++)
  9. #define fordit(rit, type, var) for(type::reverse_iterator rit = var.rbegin(); rit != var.rend(); rit++)
  10. #define ii pair<int, int>
  11. #define iii pair<int, ii>
  12. #define ff first
  13. #define ss second
  14. #define mp make_pair
  15. #define pb push_back
  16. #define ll long long
  17. #define maxN 100005
  18.  
  19. int n, a[maxN], b[maxN];
  20.  
  21. bool cmp(int x, int y) {
  22.     return (a[x] <= a[y]);
  23. }
  24.  
  25. int main () {
  26.     #ifndef ONLINE_JUDGE
  27.         freopen("input.txt", "r", stdin);
  28.         //freopen("output.txt", "w", stdout);
  29.     #endif // ONLINE_JUDGE
  30.  
  31.     scanf("%d", &n);
  32.     fto(i, 1, n) {
  33.         scanf("%d", &a[i]);
  34.         b[i] = i;
  35.     }
  36.     sort(b+1, b+n+1, cmp);
  37.     fto(i, 1, n) printf("%d %d\n", b[i], a[i]);
  38.     printf("\n");
  39.  
  40.     stable_sort(b+1, b+n+1, cmp);
  41.     fto(i, 1, n) printf("%d %d\n", b[i], a[i]);
  42.     printf("\n");
  43.  
  44.     return 0;
  45. }
Advertisement
Add Comment
Please, Sign In to add comment