前半段肯定是加速,后半段可能要减速。有个有意思的解法
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <stack>
#include <queue>
#include <map>
#include <set>
#include <vector>
#include <math.h>
#include <algorithm>
using namespace std;
int main() {
int i,v1,v2,t,d,sum;
while (~scanf ("%d%d%d%d",&v1,&v2,&t,&d) ) {
sum = 0;
for (i=0; i<t; i++) {
sum+=min (v1+i*d,v2+ (t-i-1) *d);
}
printf ("%d\n",sum);
}
return 0;
}