题目描述
津津上初中了。妈妈认为津津应该更加用功学习,所以津津除了上学之外,还要参加妈妈为她报名的各科复习班。另外每天妈妈还会送她去学习朗诵、舞蹈和钢琴。但是津津如果一天上课超过八个小时就会不高兴,而且上得越久就会越不高兴。
这次与 NOIp2004 普及组第一题不同的是:假设津津不会因为其它事不高兴,但是她的不高兴会(当然高兴也会)持续到第二天。请你帮忙检查一下津津以后 n n n 天的日程安排,看看以后 n n n 天她会不会不高兴(计算方法:用昨天不高兴程度加上今天上课总时间减去 8 8 8 后得到的数作为今天不高兴程度);输出以后 n n n 天结束后不高兴程度和是多少。
输入格式
第一行共一个数 n n n。
第二行至第 n + 1 n+1 n+1 行,每行两个数,表示这天上学时间和课外补习班时间。
输出格式
一个数,这 n n n 天过后的不高兴程度和。
样例 #1
样例输入 #1
7
5 3
6 2
7 2
5 3
5 4
0 4
0 6
样例输出 #1
-2
提示
数据范围及约定
对于全部数据,上学时间和上课时间各不超过 8 8 8,和不超过 16 16 16, n ≤ 3000 n \le 3000 n≤3000。
代码
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
int unhappiness = 0; // 初始的不高兴程度为0
int current_unhappiness = 0; // 当前的不高兴程度
for (int i = 0; i < n; ++i) {
int school, extra;
cin >> school >> extra;
int total_hours = school + extra;
current_unhappiness += (total_hours - 8); // 更新当天的不高兴程度
// 更新总的不高兴程度
unhappiness += current_unhappiness;
}
cout << unhappiness << endl; // 输出最后的不高兴程度
return 0;
}