c语言关于时间快乐值得运算

Phenix今天又有早八,由于他喜欢卡点到,所以只给自己留了T分钟的时间吃饭。鹏远餐厅有n道菜,每道菜有一个快乐值v和用餐时间t,意为Phenix可以花t分钟吃掉这道菜,然后获得v的快乐值。但是如果吃早饭的时间太长了,导致他迟到了他也会感到不开心,具体的,如果t > T,他获得的快乐值就是v-(t-T)。现在请你计算Phenix吃掉某一道菜能获得的最大快乐值

输入:
第一行两个整数n,T,接下来n行每行两个数表示每道菜的快乐值和用餐时间。n<=100000

输出:
最大快乐值(注意可能是负数)

输入样例:
2 5
3 3
4 5
输出样例:
4

#include <stdio.h>
int main(){
int n,T;
scanf("%d%d",&n,&T);
int max=-T;
for(int i =0;i<n;++i){
int v,t,temp;
scanf("%d%d",&v,&t);
if (t>T)temp=v-(t-T);
else temp=v;
max=(max>temp)?max:temp;
}
printf("%d",max);
}

#include<stdio.h>
int main()
{
int n,T,sum=0,t=0;
int v[100000],time[100000];
scanf("%d",&n);
scanf("%d",&T);
for(int i=0;i<n;i++)
{
scanf("%d",&v[i]);
scanf("%d",&time[i]);
t+=time[i];
}
for(int i=0;i<n;i++)
sum+=v[i];
if(t>T)
sum=sum-(t-T);
printf("%d",sum);
return 0;
}
最基本的思路就是上面的代码,至于其他的就看各位大佬了😄