Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<bits/stdc++.h>
- // #include<time.h>
- // #include<stdio.h>
- // #include<windows.h>
- // #include<conio.h>
- using namespace std;
- #define f first
- #define s second
- #define ll long long
- #define ld long double
- #define MOD 1000000007
- #define PI (2*acos(0))
- #define pll pair<ll, ll>
- #define pii pair<int, int>
- #define vi vector<int>
- #define vll vector<ll>
- #define vvi vector<vi>
- #define vvll vector<vll>
- #define pb push_back
- #define FOR(i, a, b) for(ll i = (a); i <= (b); i++)
- #define FORn(i, n) for(ll i = 1; i <= (n); i++)
- #define FORx(i, a, b, n) for(ll i = (a); i <= (b); i += (x))
- #define FORa(i, b) for(; i <= (b); i++)
- #define FORax(i, b, x) for(; i <= (b); i += (x))
- #define FORR(i, a, b) for(ll i = (a); i >= (b); i--)
- #define FORRn(i, n) for(ll i = (n); i >= 1; i--)
- #define FORRx(i, a, b, n) for(ll i = (a); i >= (b); i -= (x))
- #define FORRa(i, b) for(; i >= (b); i--)
- #define FORRax(i, b, x) for(; i >= (b); i -= (x))
- #define all(x) (x).begin(), (x).end()
- #define sz(x) (x).size()
- #define sqr(x) 1ll*(x)*(x)
- template <typename T>
- inline void Read(T& x) {
- bool Neg = false;
- char c;
- for (c = getchar(); c < '0' || c > '9'; c = getchar())
- if (c == '-') Neg = !Neg;
- x = c - '0';
- for (c = getchar(); c >= '0' && c <= '9'; c = getchar())
- x = x * 10 + c - '0';
- if (Neg) x = -x;
- }
- template <typename T>
- inline void Write(T x) {
- if (x < 0)
- {
- putchar('-'); x = -x;
- }
- T p = 1;
- for (T temp = x / 10; temp > 0; temp /= 10) p *= 10;
- for (; p > 0; x %= p, p /= 10) putchar(x / p + '0');
- }
- /* ----------------- useful func ----------------- */
- template<typename T> inline
- void update(T& x){
- if(x < 5){
- if(x == 3)
- x = 5;
- else
- x = 3;
- }
- else{
- if((x - 1)%6)
- x += 2;
- else
- x += 4;
- }
- }
- template<typename T> inline
- void SieveOfEratosthenes(T n){
- vector<T> prime(n + 1, true);
- prime[0] = prime[1] = false;
- for (int p = 2; p*p <= n; update(p))
- if (prime[p] == true)
- for (int i = p*p; i <= n; i += p)
- prime[i] = false;
- for (int p = 2; p <= n; update(p))
- if (prime[p]){
- Write(p); putchar('\n');
- }
- }
- vvll operator * (vvll a, vvll b){
- ll M = sz(a), N = sz(b), P = sz(b[0]);
- vvll res(M, vll(N, 0));
- FOR(i, 0, M - 1)
- FOR(j, 0, P - 1)
- FOR(k, 0, N-1)
- res[i][j] += a[i][k]*b[k][j];
- return res;
- }
- template <typename T> inline
- T power(T a, ll n){
- if(n == 1) return a;
- T t = power(a, n/2);
- return (n & 1) ? t*t*a : t*t;
- }
- /* ----------------- ~~~~~~~~~~~ ----------------- */
- /* ----------------- ~~~~~~~ ----------------- */
- int n, x, sum;
- pii MAX, MIN;
- vi a;
- /* ----------------- ~~~~~~~ ----------------- */
- int main(){
- //freopen("INPUT.inp", "r", stdin);
- //freopen("OUTPUT.out", "w", stdout);
- //ios_base::sync_with_stdio(0); cin.tie(0);
- /* ----------------- main func ----------------- */
- MAX.s = MIN.s = 1;
- cin >> n >> MIN.f;
- a.pb(sum += MAX.f = MIN.f);
- FOR(i, 2, n){
- cin >> x;
- if(x > MAX.f) MAX = {x, i};
- if(x < MIN.f) MIN = {x, i};
- a.pb(x);
- sum += x;
- }
- sort(all(a));
- cout << sum << '\n' << MAX.f << ": " << MAX.s << '\n' << MIN.f << ": " << MIN.s << '\n';
- for(vi::iterator i = a.begin(); i != a.end(); i++)
- cout << *i << ' ';
- /* ----------------- ~~~~~~~~~ ----------------- */
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement