题目描述
津津上高中了。她在自己的妈妈的魔鬼训练下,成为了一个神犇,每次参加一次OI比赛必拿Au虐全场。每次她拿到一个Au后就很高兴。假设津津不会因为其它事高兴,并且她的高兴会持续T天(包包含获奖当天。就算在高兴的时候再次拿到Au,他的高兴也只能维持包括这次拿奖之日起T天,而不是额外增加T天的高兴时间,除非之后再拿奖)。请你帮忙检查一下津津接下来的的日程安排,要参加N场比赛,看看接下来的几天,津津会累计开心多久?
输入输出格式
输入格式:
第一行两个整数N和T。
接下来一行,N个单调递增整数t_i,表示她在第t_i天的时候拿了一个Au。
输出格式:
一个整数表示,津津累计开心多久。
输入输出样例
输入样例#1:
3 5
1 2 10
输出样例#1:
11
说明
1<=N<=200000
1<=T,t_i<=10^9,t_i单调递增。
思路:模拟
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
int n,t,pos,ans;
int main(){
scanf("%d%d",&n,&t);
scanf("%d",&pos);
for(int i=;i<=n;i++){
int a;scanf("%d",&a);
if(a-pos>t) ans+=t,pos=a;
else ans+=a-pos,pos=a;
}
cout<<ans+t;
}
/*
10 10
9 17 23 34 47 50 53 60 67 94
*/