https://atcoder.jp/contests/abc201/tasks/abc201_a
解説
https://atcoder.jp/contests/abc201/submissions/22640618
並び替えを全探索して、等差数列であるかを判定してもいい。
そっちの方が実装簡単だったかも。
条件を改めてみてみると、
A[3] - A[2] = A[2] - A[1]
A[3] + A[1] = 2 * A[2]
という感じなので、1つだけ選択した場合に
それ以外の和 = 選択×2
となるものがあればYesとなる。
自分の実装ではこれを判定している。
int A[3]; //--------------------------------------------------------------------------------------------------- void _main() { rep(i, 0, 3) cin >> A[i]; rep(i, 0, 3) { int lft = 0; rep(j, 0, 3) if (i != j) lft += A[j]; int rht = A[i] * 2; if (lft == rht) { cout << "Yes" << endl; return; } } cout << "No" << endl; }