题解 AT2287 【Walk and Teleport】

rui_er

2019-09-19 18:18:08

Solution

~~真心不明白为什么这题是绿题,只是一个模拟。~~ # 读懂题意是关键 我第一次提交的时候对题面理解有误,加了一句```sort(x, x+n);```,结果WA了很多测试点。其实这里是需要按照顺序到达每个地点的QAQ。 # 模拟方法 对于每一个地点,判断两种方案中耗费疲劳值最少的方案,详见代码。 ```cpp #include <iostream> using namespace std; #define ll long long int main() { ll n, a, b; cin>>n>>a>>b; ll x[100001]; for(ll i=1;i<=n;i++) cin>>x[i]; ll sum = 0; for(ll i=1;i<n;i++) { ll l = x[i+1] - x[i]; sum += min(b, a*l); } cout<<sum<<endl; return 0; } ```