J - 暖气坏了
题目:蒜头君家的暖气经常出问题,每当暖气坏了,蒜头君就会持续感冒 m 天(从坏的那天算起,两次感冒时间重叠不会累加)。蒜头君去寻求预言家的帮助,预言家告诉他接下来 n次暖气片坏掉的时间。根据这个时间,蒜头君就能知道他未来获得感冒的总天数。
输入格式
第一行两个整数 n,m,表示暖气片坏掉的次数以及每次感冒的持续天数。
第二行 n个整数 a,表示暖气片坏掉的日期。
数据范围:1 ≤ n ≤ 10000,1 ≤ m,ai ≤10的九次方,保证ai严格递增的。
输出格式
一个整数,表示蒜头君感冒的总天数。
Sample Input
4 3
1 2 4 8
Sample Output
9
思路:算出当小于感冒天数一直感冒,大于感冒天数只感冒m天,然后算出最后一次暖气坏的时候感冒的天数
#include<stdio.h>
int main()
{
int n,m,i;
int a[10000],s=0;
scanf("%d %d",&n,&m);
for (i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
for (i=1;i<n;i++)
{
if (a[i]-a[i-1]<=m)
s+=a[i]-a[i-1];
if (a[i]-a[i-1]>m)
s+=m;
}
s+=m;
printf("%d",s);
}