题目链接:传送门
简单模拟一下
坑点是如果相邻的两个楼层如果是相同的话不能只停留一个5秒,要照常当作两个楼层停留两个5秒。
#include<stdio.h>
#include<string.h>
#include<math.h>
#include<algorithm>
#include<map>
#include<set>
#include<queue>
#include<stack>
#define inf 4000000000000000000
using namespace std;
typedef long long ll;
const ll maxn=1e6+50;
const ll mod=1e9+7;
const double eps=1e-9;
ll a[maxn];
int main()
{
ll n,sum=0;
scanf("%lld",&n);
ll last=0;
for(ll i=1;i<=n;i++)
{
scanf("%lld",&a[i]);
if(a[i]>last)sum+=(5+(a[i]-last)*6);
else if(a[i]<last)sum+=(5+(last-a[i])*4);
last=a[i];
}
printf("%lld\n",sum);
//scanf("%lld",&n);
return 0;
}