上手に場合分けしよう!
問題概要
3 個の整数 が与えられる。
これらのうちの 1 個が、残りの 2 個の和として表せるときは 1 を出力し、そうでないときは 0 を出力せよ。
解法
「3 個の整数 のうちの 1 個」が残りの 2 個の和として表せる条件を考えましょう。
その「1 個」が である場合と、
である場合と、
である場合に分けて考えます。
である場合:
- 残りの 2 個の和は
なので、1 になる条件は
と表せます
- 残りの 2 個の和は
である場合:
- 残りの 2 個の和は
なので、1 になる条件は
と表せます
- 残りの 2 個の和は
である場合:
- 残りの 2 個の和は
なので、1 になる条件は
と表せます
- 残りの 2 個の和は
これらより、求める条件は
または
または
と表せます。この条件を満たすならば 1 を出力し、満たさないならば 0 を出力しましょう。
コード
#include <bits/stdc++.h> using namespace std; int main() { int A, B, C; cin >> A >> B >> C; if (A == B + C || B == C + A || C == A + B) { cout << 1 << endl; } else { cout << 0 << endl; } }