この問題は意味を理解するのが大変だと思う!
問題概要
3 つの整数 が与えられる。これらを適切に並び替えたときの
- 1 番目と 2 番目の差
- 2 番目と 3 番目の差
の和として、考えられる最小値を求めよ。
解法
実際に幾つかのケースで手を動かしてみると次のことがわかってくる
- 小さい順に並んでいるときが最小
- 大きい順に並んでいるときも最小
いずれの場合も、結局は「3 つの数のうちの最大値」と「3 つの数のうちの最小値」の和が答えになる。
このように、問題文のわけわからない条件をわかりやすく言い換えることは、AtCoder のより高度な問題に挑むときに必要になってくる!
#include <bits/stdc++.h> using namespace std; int main() { int A, B, C; cin >> A >> B >> C; cout << max({A, B, C}) - min({A, B, C}) << endl; }