Chief

Chief

Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^

题目描述

土豪大学有着全世界知名的食堂。厨房里有 N 个厨师,编号从 1 到 N,每天
需要做 M 道菜,但是每道菜需要的数量可能不同。
和其他地方不一样,土豪大学食堂里面的每道菜并不是一个人完成的,具体来说,
第 i 道菜需要编号从 a i 到 b i 的厨师做。
为了表彰这些厨师,土豪大学的校长准备从这 N 个厨师中选出一个最重要的厨
师。一个厨师参与制作的菜越多,那么这个厨师就越重要。
例如,有 3 个厨师,3 道菜。第 1 道菜需要编号从 1 到 3 的厨师完成,第 2
道菜需要编号从 2 到 3 的厨师完成,第 3 道菜需要编号从 2 到 2 的厨师完
成。并且第 1 道菜需要做 3 次,并且第 2 和 3 道菜需要做 2 次。那么最重
要的厨师是 2 号厨师,因为他们分别参与制作的菜的数目为 3, 7, 5。2 号厨师
做的最多。
现在给你这些信息,你需要找出谁是最重要的厨师。如果有多个,那么编号最小
的那个是最重要厨师。

输入

 输入第一行是一个整数 T,表示有 T 组数据。
每组数据的第一行有两个整数 N 和 M (1 <= N, M <= 1000),表示土豪大学中厨
师的数量和菜的种类。
接下来 M 行,每行三个整数 a i , b i 和 c i (1 <= a i <= b i <= N, 1 <= c i <= 1000),表
示第 i 道菜需要编号从 a i 到 b i 的厨师做,并且需要做 c i 次。

输出

 对于每组数据,输出最重要的厨师的编号,如果有多个,输出编号最小的那个。

示例输入

4
1 1
1 1 2
2 2
1 2 3
2 2 4
4 3
2 4 3
1 1 3
1 4 3
3 3
1 3 3
2 3 2
2 2 2

示例输出

1
2
1
2

提示

 

来源

Ningbo_2014_Contest

示例程序

 
#include<stdio.h>  
struct set  
{  
    int name,num;  
}a[1000];  
int main()  
{  
    int i,j,n,m,k,t,b,c,d,e,f,l;  
    scanf("%d",&n);  
    for(i=0;i<n;i++)  
    {  
        scanf("%d %d",&b,&c);  
        for(j=1;j<=b;j++)  
        {  
            a[j].name=j;  
            a[j].num=0;  
        }  
        for(j=0;j<c;j++)  
        {  
            scanf("%d %d %d",&d,&e,&f);  
            for(t=d;t<=e;t++)  
                a[t].num+=f;  
        }  
        k=1;  
        l=a[1].num;  
        for(j=2;j<=b;j++)  
            if(a[j].num>l)  
            {  
                l=a[j].num;  
                k=j;  
            }  
            printf("%d\n",k);  
    }  
} 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值