Submission #56261403


Source Code Expand

/*
Author: rnishiura
Date: 24-07-20
Description: template
*/

#define ATCODER_
#include <bits/stdc++.h>
#ifdef ATCODER_
#include <atcoder/all>
#endif
#define _GLIBCXX_DEBUG
#define rep(x, n)      for(ll x=0; x<n; x++)
#define repi(x, a, b)  for(ll x=a; x<b; x++)
#define rrep(x, n)     for(ll x=n-1; x>=0; x--)
#define rrepi(x, a, b) for(ll x=b-1; x>=a; x--)
#define SQ(z) ((z)*(z))
#define contains(x, a) ((a).find(x) != (a).end())
#define all(a) (a).begin(), (a).end()
#define sum(a)  (accumulate(all(a), 0LL))
#define mini(a) (min_element(all(a)) - (a).begin())
#define maxi(a) (max_element(all(a)) - (a).begin())
#define mine(a) (*min_element(all(a)))
#define maxe(a) (*max_element(all(a)))
#define lowb(x, a) (lower_bound(all(a), (x)) - (a).begin())
#define uppb(x, a) (upper_bound(all(a), (x)) - (a).begin())
#define divl(n, m)  ((n+m)/(m)) 
#define divle(n, m) ((n+m-1)/(m)) 
#define divse(n, m) ((n)/(m)) 
#define divs(n, m)  ((n-1)/(m)) 
#define bstoi(s)  stoi((s), nullptr, 2)
#define MOD 998244353
#define PI 3.14159265358979323846
#define inf (1LL << 61)
#define fi first
#define se second
#define pb push_back
#define mp make_pair
#define POS  fi
#define COST se
#define endl '\n'
#define unordered_multiset multiset

#define VNAME(v) #v
#define GET_MACRO(_1,_2,_3, NAME,...) NAME
#define print(...) GET_MACRO(__VA_ARGS__, print3, print2, print1)(__VA_ARGS__)
#define debug(...) GET_MACRO(__VA_ARGS__, debug3, debug2, debug1)(__VA_ARGS__)

#define print1(z)       { cout << (z) << endl;              }
#define print2(y, z)    { cout << (y) << ' '; print1(z);     }
#define print3(x, y, z) { cout << (x) << ' '; print2(y, z); }
#define debug1(z)       { if(DEBUG) { print(VNAME(z)); print(z); } }
#define debug2(y, z)    { if(DEBUG) { print(VNAME(y), VNAME(z)); print(y, z); }    }
#define debug3(x, y, z) { if(DEBUG) { print(VNAME(x), VNAME(y), VNAME(z)); print(x, y, z); } }
#ifdef ATCODER_
using namespace atcoder;
using mint = modint998244353;
#endif

using namespace std;
using ll  = long long;
using v   = vector<ll>;
using vv  = vector<v>;
using vp  = vector<pair<ll, ll>>;
using vvp = vector<vp>;

template<typename T, typename U> istream& operator>>(istream& is, pair<T, U> &p){is >> p.first >> p.second;        return is;}
template<typename T, typename U> ostream& operator<<(ostream& os, pair<T, U>  p){os << p.first << ' ' << p.second; return os;}
template<typename T>             vector<T>& operator--            (vector<T> &v){for (auto& i : v) --i;            return  v;}
template<typename T>             vector<T>& operator++            (vector<T> &v){for (auto& i : v) ++i;            return  v;}
template<typename T>             istream& operator>>(istream& is,  vector<T> &v){for (auto& i : v) is >> i;        return is;}
// template<typename T>             ostream& operator<<(ostream& os,  vector<bool>  v){for (auto i : v) os << (i ? 'T' : 'F') << ' '; return os;}
template<typename T>             ostream& operator<<(ostream& os,  vector<T>  v){for (auto i : v) os << i << ' '; return os;}
template<typename T>             ostream& operator<<(ostream& os,  vector<vector<T>>  v){for (auto& i : v) os << i << endl; return os;}
template<typename T, typename U> pair<T,U>& operator--           (pair<T, U> &p){--p.first; --p.second;            return  p;}
template<typename T, typename U> pair<T,U>& operator++           (pair<T, U> &p){++p.first; ++p.second;            return  p;}
template<typename T, typename U> pair<T,U> operator-(pair<T,U> a, pair<T,U> b){return mp(a.first-b.first, a.second-b.second);}
template<typename T, typename U> pair<T,U> operator+(pair<T,U> a, pair<T,U> b){return mp(a.first+b.first, a.second+b.second);}
template<typename T, typename U> pair<T,T> operator*(pair<T,T> a,         U b){return mp(a.first*b      , a.second*b);}
template<typename T, typename U> pair<T,T> operator/(pair<T,T> a,         U b){return mp(a.first/b      , a.second/b);}
template<typename T, typename U> pair<T,T> operator%(pair<T,T> a,         U b){return mp(a.first%b      , a.second%b);}
template<typename T, typename U> void umin(T& a, U b){if (a > b) a = b;}
template<typename T, typename U> void umax(T& a, U b){if (a < b) a = b;}


const string DEBUG_MESSAGE = "DEBUG MODE IS ON";
// const int DEBUG = 1;
const int DEBUG = 0;

void solve() {
  ll n; cin >> n;
  vp a(n);
  rep(i, n) {
    cin >> a[i].fi;
    a[i].se = i+1;
  }

  sort(all(a));

  print(a[n-2].se);
}

int main(void) {
  debug(DEBUG_MESSAGE);

  cin.tie(nullptr); ios::sync_with_stdio(false);
  
  ll t = 1; // cin >> t;
  rep(i, t) solve();

  debug(DEBUG_MESSAGE);
}

Submission Info

Submission Time
Task B - Second Best
User rnishiura
Language C++ 23 (gcc 12.2)
Score 200
Code Size 4693 Byte
Status AC
Exec Time 1 ms
Memory 3652 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 200 / 200
Status
AC × 2
AC × 15
Set Name Test Cases
Sample 00_sample_01.txt, 00_sample_02.txt
All 00_sample_01.txt, 00_sample_02.txt, 01_test_01.txt, 01_test_02.txt, 01_test_03.txt, 01_test_04.txt, 01_test_05.txt, 01_test_06.txt, 01_test_07.txt, 01_test_08.txt, 01_test_09.txt, 01_test_10.txt, 01_test_11.txt, 01_test_12.txt, 01_test_13.txt
Case Name Status Exec Time Memory
00_sample_01.txt AC 1 ms 3428 KiB
00_sample_02.txt AC 1 ms 3512 KiB
01_test_01.txt AC 1 ms 3464 KiB
01_test_02.txt AC 1 ms 3504 KiB
01_test_03.txt AC 1 ms 3444 KiB
01_test_04.txt AC 1 ms 3428 KiB
01_test_05.txt AC 1 ms 3532 KiB
01_test_06.txt AC 1 ms 3568 KiB
01_test_07.txt AC 1 ms 3436 KiB
01_test_08.txt AC 1 ms 3500 KiB
01_test_09.txt AC 1 ms 3372 KiB
01_test_10.txt AC 1 ms 3560 KiB
01_test_11.txt AC 1 ms 3480 KiB
01_test_12.txt AC 1 ms 3456 KiB
01_test_13.txt AC 1 ms 3652 KiB