Advertisement
leminhkt

noname45

Apr 18th, 2020
280
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.81 KB | None | 0 0
  1. #include<bits/stdc++.h>
  2. // #include<time.h>
  3. // #include<stdio.h>
  4. // #include<windows.h>
  5. // #include<conio.h>
  6.  
  7.  
  8. using namespace std;
  9.  
  10.  
  11. #define f first
  12. #define s second
  13. #define ll long long
  14. #define ld long double
  15. #define MOD 1000000007
  16. #define PI (2*acos(0))
  17. #define pll pair<ll, ll>
  18. #define pii pair<int, int>
  19. #define vi vector<int>
  20. #define vll vector<ll>
  21. #define vvi vector<vi>
  22. #define vvll vector<vll>
  23. #define pb push_back
  24.  
  25.  
  26. #define FOR(i, a, b) for(ll i = (a); i <= (b); i++)
  27. #define FORn(i, n) for(ll i = 1; i <= (n); i++)
  28. #define FORx(i, a, b, n) for(ll i = (a); i <= (b); i += (x))
  29. #define FORa(i, b) for(; i <= (b); i++)
  30. #define FORax(i, b, x) for(; i <= (b); i += (x))
  31. #define FORR(i, a, b) for(ll i = (a); i >= (b); i--)
  32. #define FORRn(i, n) for(ll i = (n); i >= 1; i--)
  33. #define FORRx(i, a, b, n) for(ll i = (a); i >= (b); i -= (x))
  34. #define FORRa(i, b) for(; i >= (b); i--)
  35. #define FORRax(i, b, x) for(; i >= (b); i -= (x))
  36.  
  37.  
  38. #define all(x) (x).begin(), (x).end()
  39. #define sz(x) (x).size()
  40. #define sqr(x) 1ll*(x)*(x)
  41.  
  42.  
  43. template <typename T>
  44. inline void Read(T& x) {
  45.     bool Neg = false;
  46.     char c;
  47.     for (c = getchar(); c < '0' || c > '9'; c = getchar())
  48.         if (c == '-') Neg = !Neg;
  49.     x = c - '0';
  50.     for (c = getchar(); c >= '0' && c <= '9'; c = getchar())
  51.         x = x * 10 + c - '0';
  52.     if (Neg) x = -x;
  53. }
  54. template <typename T>
  55. inline void Write(T x) {
  56.     if (x < 0)
  57.     {
  58.         putchar('-'); x = -x;
  59.     }
  60.     T p = 1;
  61.     for (T temp = x / 10; temp > 0; temp /= 10) p *= 10;
  62.     for (; p > 0; x %= p, p /= 10) putchar(x / p + '0');
  63. }
  64.  
  65.  
  66.     /* ----------------- useful func ----------------- */
  67.  
  68.  
  69.     template<typename T> inline
  70.     void update(T& x){
  71.         if(x < 5){
  72.             if(x == 3)
  73.                 x = 5;
  74.             else
  75.                 x = 3;
  76.         }
  77.         else{
  78.             if((x - 1)%6)
  79.                 x += 2;
  80.             else
  81.                 x += 4;
  82.         }
  83.     }
  84.  
  85.  
  86.     template<typename T> inline
  87.     void SieveOfEratosthenes(T n){
  88.         vector<T> prime(n + 1, true);
  89.         prime[0] = prime[1] = false;
  90.         for (int p = 2; p*p <= n; update(p))
  91.             if (prime[p] == true)
  92.                 for (int i = p*p; i <= n; i += p)
  93.                     prime[i] = false;
  94.         for (int p = 2; p <= n; update(p))
  95.             if (prime[p]){
  96.                 Write(p); putchar('\n');
  97.             }
  98.     }
  99.  
  100.  
  101.     vvll operator * (vvll a, vvll b){
  102.         ll M = sz(a), N = sz(b), P = sz(b[0]);
  103.         vvll res(M, vll(N, 0));
  104.         FOR(i, 0, M - 1)
  105.             FOR(j, 0, P - 1)
  106.                 FOR(k, 0, N-1)
  107.                     res[i][j] += a[i][k]*b[k][j];
  108.         return res;
  109.     }
  110.  
  111.    
  112.      template <typename T> inline
  113.     T power(T a, ll n){
  114.         if(n == 1) return a;
  115.         T t = power(a, n/2);
  116.         return (n & 1) ? t*t*a : t*t;
  117.     }
  118.  
  119.  
  120. /* ----------------- ~~~~~~~~~~~ ----------------- */
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.         /* ----------------- ~~~~~~~ ----------------- */
  129.  
  130.     int n, x, sum;
  131.     pii MAX, MIN;
  132.     vi a;
  133.  
  134. /* ----------------- ~~~~~~~ ----------------- */
  135.  
  136. int main(){
  137.    
  138.     //freopen("INPUT.inp", "r", stdin);
  139.     //freopen("OUTPUT.out", "w", stdout);
  140.     //ios_base::sync_with_stdio(0); cin.tie(0);
  141.  
  142.         /* ----------------- main func ----------------- */
  143.  
  144.     MAX.s = MIN.s = 1;
  145.     cin >> n >> MIN.f;
  146.     a.pb(sum += MAX.f = MIN.f);
  147.     FOR(i, 2, n){
  148.         cin >> x;
  149.         if(x > MAX.f) MAX = {x, i};
  150.         if(x < MIN.f) MIN = {x, i};
  151.         a.pb(x);
  152.         sum += x;
  153.     }
  154.     sort(all(a));
  155.     cout << sum << '\n' << MAX.f << ": " << MAX.s << '\n' << MIN.f << ": " << MIN.s << '\n';
  156.     for(vi::iterator i = a.begin(); i != a.end(); i++)
  157.         cout << *i << ' ';
  158.  
  159. /* ----------------- ~~~~~~~~~ ----------------- */
  160.  
  161. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement