公式

B - フェンスの隙間 / Fence Gap 解説 by harurun4635 印刷ページ


もっとも広い隙間 \(D = \displaystyle \max_{ 1 \le i \le N-1} A_{i+1} -A_i\) を求めた後、 \(i\) の小さい順に \(D = A_{i+1} - A_i\) かどうかを判定すればよいです。

実装の工夫として、 \((A_i - A_{i+1}, i)\) の組の辞書順最小を求めてもよいです。(最小値になるように引き算の順番が逆になっています)


実装例

n = int(input())
a = list(map(int, input().split()))
b = [(a[i]-a[i+1], i+1) for i in range(n-1)]
b.sort()
print(b[0][1])

投稿日時:
最終更新: