Advertisement
Guest User

Untitled

a guest
May 22nd, 2017
47
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.80 KB | None | 0 0
  1. #include <iostream>
  2. #include <cstdio>
  3. #include <cstdlib>
  4. using namespace std;
  5. long int a[20000], b[20000];
  6. void qs(int l, int r){
  7. int x=a[l+(r-l)/2];
  8. int i=l;
  9. int j=r;
  10. while (i<=j){
  11. while (a[i]<x) i++;
  12. while (a[j]>x) j--;
  13. if(i<=j){
  14. swap(a[i],a[j]);
  15. swap(b[i],b[j]);
  16. i++;
  17. j--;
  18. }
  19. }
  20. if(i<r) qs(i,r);
  21. if(l<j) qs(l,j);
  22. }
  23. int main(){
  24. int i,n;
  25. int max,min,sum;
  26. cin >>n;
  27. for(i=1;i<=n; i++){
  28. cin >>a[i] >>b[i];
  29. }
  30. qs(1,n);
  31. min=a[1];
  32. max=b[1];
  33. sum=0;
  34. for(i=2;i<=n;i++){
  35. if(b[i]>max && a[i]<=max) max=b[i];
  36. if(a[i]>max) {sum=sum+max-min; min=a[i]; max=b[i];}
  37. }
  38. sum=sum+max-min;
  39. cout <<sum;
  40. return 0;
  41. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement