nyoj 53-不高兴的小明 (遍历)
53-不高兴的小明
内存限制:64MB
时间限制:3000ms
Special Judge: No
accepted:28
submit:89
题目描述:
小明又出问题了。妈妈认为聪明的小明应该更加用功学习而变的更加厉害,所以小明除了上学之外,还要参加妈妈为他报名的各科复习班。另外每周妈妈还会送他去学习朗诵、舞蹈和钢琴。但是小明如果一天上课超过八个小时就会不高兴,而且,上得越久就会越不高兴。假设小明不会因为其它事不高兴,并且她的不高兴不会持续到第二天。请你帮忙检查一下小明下周的日程安排,看看下周他会不会不高兴;如果会的话,哪天最不高兴。
输入描述:
第一行输入N(0<N<100)表示测试数据组数,接下来每组测试数据输入包括七行数据,分别表示周一到周日的日程安排。每行包括两个小于10的非负整数,用空格隔开,分别表示津津在学校上课的时间和妈妈安排她上课的时间。
输出描述:
每组测试数据输出包括一行,这一行只包含一个数字。如果不会不高兴则输出0,如果会则输出最不高兴的是周几(用1,2,3,4,5,6,7分别表示周一,周二,周三,周四,周五,周六,周日)。如果有两天或两天以上不高兴的程度相当,则输出时间最靠前的—天。
样例输入:
1 5 3 6 2 7 2 5 3 5 4 0 4 0 6
样例输出:
3
分析:
1、依次遍历,查找是否有不高兴的时候
核心代码:
1 for(int i = 1; i <= 7; ++ i) 2 { 3 scanf("%d%d",&a, &b); 4 if(a+b > 8 &7 a+b > my_max) 5 { 6 my_max = a + ; 7 max_day = i; 8 } 9 }
C/C++代码实现(AC):
1 #include <iostream> 2 #include <algorithm> 3 #include <cstring> 4 #include <cstdio> 5 #include <cmath> 6 #include <stack> 7 #include <map> 8 #include <queue> 9 #include <set> 10 11 using namespace std; 12 13 int main() 14 { 15 16 int t; 17 scanf("%d", &t); 18 while(t --) 19 { 20 int a, b, my_max = -1, max_day = 0; 21 for(int i = 1; i <= 7; ++ i) 22 { 23 scanf("%d%d", &a, &b); 24 if(a + b > 8 && a + b > my_max) 25 { 26 my_max = a + b; 27 max_day = i; 28 } 29 } 30 printf("%d\n", max_day); 31 } 32 return 0; 33 }