問題概要
問題ページ
-
B - Booby Prize
問題ページへ移動する
問題文
\(1,\ldots,N\) の番号のついた \(N\) 人の選手がゲームを行いました。選手 \(i\) のスコアは \(A_i\) であり、スコアが小さい方が上位になります。
ブービー賞に該当する選手、すなわち、下位から \(2\) 番目の選手の番号を求めてください。
制約
- \(2 \leq N \leq 2\times 10^5\)
- \(1 \leq A_i \leq 10^9\)
- \(A_i\) は相異なる
- 入力に含まれる値は全て整数である
問題の考察
ACコード
import sys
def solve():
input = sys.stdin.readline
mod = 10 ** 9 + 7
n = int(input().rstrip('\n'))
a = list(map(int, input().rstrip('\n').split()))
ls = []
for i, v in enumerate(a):
ls.append([v, i])
ls.sort()
print(ls[-2][1] + 1)
if __name__ == '__main__':
solve()