Official

D - Parking 2 Editorial by sheyasutaka


\(h\) 時台 (\(h\) 時ちょうどから \(h+1\) 時ちょうどまで) の料金は以下で求まります.

  • \(L \leq h \leq R-1\) であれば \(X\)
  • そうでなければ \(Y\)

整数 \(h\) について,\(A \leq h \leq B-1\) の範囲でループを回し,上で求まる \(h\) 時台の料金を足していけば答えになります.

実装例 (C++)

#include <iostream>
using std::cin;
using std::cout;
using std::cerr;
using std::endl;

int main (void) {
	int x, y, l, r, a, b;
	cin >> x >> y >> l >> r >> a >> b;

	int sum = 0;
	for (int i = a; i <= b-1; i++) {
		// cost of i-th hour
		if (l <= i && i <= r-1) {
			sum += x;
		} else {
			sum += y;
		}
	}

	cout << sum << "\n";

	return 0;
}

posted:
last update: