[AtCoder] ARC 109 A – Hands
問題
方針
廊下だけを使うか、廊下と階段を使うかの \( 2 \) 通りを考えます。階段を使う場合は、廊下を先に通り、残りは階段を使います。
コード
#include <bits/stdc++.h> using namespace std; typedef long long ll; int main() { int a, b, x, y; cin >> a >> b >> x >> y; if (a == b) { cout << x << "\n"; } else if (a > b) { int d = a - b; cout << min(x + (d - 1) * y, (2 * d - 1) * x) << "\n"; } else { int d = b - a; cout << min(x + d * y, (2 * d + 1) * x) << "\n"; } return 0; }
ディスカッション
コメント一覧
まだ、コメントがありません