http://codeforces.com/contest/911/problem/A
N個の配列Aがある。
この中には最小値が2つ以上入っている。
最小値の間の距離の最小値を答えよ。
解法
http://codeforces.com/contest/911/submission/33717689
最小値をまずさがす(変数mi)。
次に最小値がある要素の添字を集める(配列v)。
隣接する添字の差の最小値を求めると答え。
int N, A[101010]; //--------------------------------------------------------------------------------------------------- void _main() { cin >> N; rep(i, 0, N) cin >> A[i]; int mi = A[0]; rep(i, 0, N) mi = min(mi, A[i]); vector<int> v; rep(i, 0, N) if (A[i] == mi) v.push_back(i); int n = v.size(); int ans = 10101010; rep(i, 0, n - 1) ans = min(ans, v[i + 1] - v[i]); cout << ans << endl; }