2873: 【例58.3】 电梯运行时间
内存限制:64 MB
时间限制:1.000 S
评测方式:文本比较
命题人:
提交:2
解决:2
题目描述
电梯每向上运行一层需要 $6$ 秒钟,向下运行一层需要 $4$ 秒钟,每开门一次需要 $5$ 秒(如果有人到达才开门),并且每下一个人需要加 $1$秒。
特别指出,电梯最开始在 $0$ 层,并且最后必须再回到 $0$ 层才算一趟任务结束。假设在开始的时候已知电梯内的每个人要去的楼层,你能计算出完成本趟任务需要的总时间吗?
特别指出,电梯最开始在 $0$ 层,并且最后必须再回到 $0$ 层才算一趟任务结束。假设在开始的时候已知电梯内的每个人要去的楼层,你能计算出完成本趟任务需要的总时间吗?
输入
第一行,一个正整数$n$($1 < n < 10^5$),表示乘坐电梯的人数。
第二行,$n$个正整数,$a_i$ ($1 < a_i < 10^7$)表示第i个人要去的楼层。
第二行,$n$个正整数,$a_i$ ($1 < a_i < 10^7$)表示第i个人要去的楼层。
输出
仅一行,一个正整数,表示完成这趟任务需要的时间。
样例输入 复制
4
3 7 3 1
样例输出 复制
89
提示
#include<bits/stdc++.h> using namespace std; typedef long long ll; ll a[1000010]; int main() { ll n,i;cin>>n; for ( i=0;i<n;i++) cin>>a[i]; sort(a,a+n); ll time=a[n-1]*10; //最高层数 time+=(unique(a,a+n)-a)*5; //计算不重复楼层的数目 time+=n; cout<<time; return 0; }