不高兴的津津

35 阅读2分钟

题目描述
津津上初中了。妈妈认为津津应该更加用功学习,所以津津除了上学之外,还要参加妈妈为她报名的各科复习班。另外每周妈妈还会送她去学习朗诵、舞蹈和钢琴。但是津津如果一天上课超过八个小时就会不高兴,而且上得越久就会越不高兴。假设津津不会因为其它事不高兴,并且她的不高兴不会持续到第二天。请你帮忙检查一下津津下周的日程安排,看看下周她会不会不高兴;如果会的话,哪天最不高兴。

输入描述
输入七行数据,分别表示周一到周日的日程安排。每行包括两个小于 1010 的非负整数,用空格隔开,分别表示津津在学校上课的时间和妈妈安排她上课的时间。

输出描述
输出一个数字。如果不会不高兴则输出 00,如果会则输出最不高兴的是周几(用 1, 2, 3, 4, 5, 6, 71,2,3,4,5,6,7 分别表示周一,周二,周三,周四,周五,周六,周日)。如果有两天或两天以上不高兴的程度相当,则输出时间最靠前的一天。

输入输出样例
示例 1
输入

5 3
6 2
7 2
5 3
5 4
0 4
0 6
copy
输出

3
copy
运行限制
最大运行时间:1s
最大运行内存: 128M

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
  int a[7][2],b[7][2];///a数组存放输入数据,b数组存放符合条件的数据
  int i,j;
  for(i=0;i<7;i++){///输入数据
    for(j=0;j<2;j++){
      scanf("%d",&a[i][j]);
    }
  }


      int f=1,flag;///f表示天数,flag控制是正常星期,还是高兴.高兴天数为0
    for(i=0;i<7;i++){//按课程顺序和生气还是高兴的条件存入新数组
      flag=0;///重置标志
      if(a[i][0]+a[i][1]>8){///生气情况
        b[i][0]=a[i][0]+a[i][1];
        if(flag==0){//
        b[i][1]=f;
        f++;
        }
      }
      else{//不生气情况
        b[i][0]=a[i][0]+a[i][1];
        b[i][1]=0;
        flag=1;
        f++;
      }
  }
  
int t=0,m=0;
  for(i=1;i<7;i++){
    for(j=0;j<7-i;j++){//按怒气值从大到小存放怒气值和对应星期
      if(b[j][0]<b[j+1][0]){
        t=b[j][0];//1
        m=b[j][1];//2
        b[j][0]=b[j+1][0];//1
        b[j][1]=b[j+1][1];//2
        b[j+1][0]=t;//1
        b[j+1][1]=m;//2
      }
    }
  }
    printf("%d",b[0][1]);

  return 0;
}