比赛 20151019 评测结果 AAAAAAAAAA
题目名称 爬山 最终得分 100
用户昵称 阿狸 运行时间 0.002 s
代码语言 C++ 内存使用 0.30 MiB
提交时间 2015-10-19 21:04:54
显示代码纯文本
#include<iostream>
#include<cstdio>
using namespace std;

long long n,d,a,b;

int main(){
	freopen("mountain.in","r",stdin);
	freopen("mountain.out","w",stdout);
	cin>>n>>d>>a>>b;
	n--;
	if(a>b)swap(a,b);
	if(b-a>d){
		int l=(b-a)/d;
		a+=d*l;
		n-=l;
	}
	if(n&1)a+=d,n--;
	n/=2;
	cout<<min(a,b)+d*n;
	return 0;
}