LuoguP7189 [COCI2007-2008#6] PARKING 题解

Content

有 3 辆卡车,第 \(i\) 辆卡车停车开始时间为 \(l_i\),结束时间为 \(r_i\)不包含)。现在有以下收费方式:

停车辆数 每分钟每辆车单价
\(1\) \(a\)
\(2\) \(b\)
\(3\) \(c\)

求一共要收多少钱。

数据范围:\(1\leqslant c\leqslant b\leqslant a\leqslant 100\)

Solution

直接模拟即可,注意 \(r_i\) 时刻不要收费否则输出结果会大。

Code

int a[7], l[7], r[7], ending;
long long sum;

int main() {
	F(i, 1, 3) a[i] = Rint;
	F(i, 1, 3) l[i] = Rint, ending = max(ending, (r[i] = Rint));
	F(i, 1, ending) {
		int num = 0;
		F(j, 1, 3) if(i >= l[j] && i < r[j]) num++;
		sum += a[num] * num;
	}
	printf("%lld", sum);
	return 0;
}
posted @ 2021-12-16 14:33  Eason_AC  阅读(63)  评论(0)    收藏  举报