不高兴的津津(升级版)
题目描述
津津上初中了。妈妈认为津津应该更加用功学习,所以津津除了上学之外,还要参加妈妈为她报名的各科复习班。另外每天妈妈还会送她去学习朗诵、舞蹈和钢琴。但是津津如果一天上课超过八个小时就会不高兴,而且上得越久就会越不高兴。
这次与NOIp2004普及组第一题不同的是:假设津津不会因为其它事不高兴,但是她的不高兴会(当然高兴也会)持续到第二天。请你帮忙检查一下津津以后n天的日程安排,看看以后n天她会不会不高兴(计算方法:用昨天不高兴程度加上今天上课总时间减去8后得到的数作为今天不高兴程度);输出以后n天结束后不高兴程度和是多少。
输入格式
第1行:一个数n
第2行~第n+1行:每行两个数,表示这天上学时间和课外补习班时间
输出格式
一个数,这n天过后的不高兴程度和
样例 #1
样例输入 #1
7
5 3
6 2
7 2
5 3
5 4
0 4
0 6
样例输出 #1
-2
提示
所有数据:上学时间和上课时间各不超过8,和不超过16,n<=3000
思路解析
本题我在写的时候也掉坑里了,原因是没看清题目要求——最后一句:“输出以后n天结束后不高兴程度和是多少。”那么根据此要求我们应当计算出每天的不高兴程度,然后求和。代码如下:
int sum = 0; //当天的不高兴程度
int total = 0; //n天的不高兴程度总和
for (int n = 1; n < day; n++) {
sum += arr[n] + brr[n] - 8;
total += sum;
}
完整代码
import java.util.Scanner;
public class P1534 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int day = scanner.nextInt();
int[] arr = new int[day];
int[] brr = new int[day];
for (int i = 0; i < day; i++) {
arr[i] = scanner.nextInt();
brr[i] = scanner.nextInt();
}
int sum = 0;
int total = 0;
for (int n = 1; n < day; n++) {
sum += arr[n] + brr[n] - 8;
total += sum;
}
System.out.println(total);
}
}
标签:P1534,津津,sum,day,int,total,升级版,高兴
From: https://blog.51cto.com/u_16100430/6507899