解法一:模拟
模拟电梯的运动,根据上一个状态的位置来计算运动耗时。
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
StreamTokenizer in = new StreamTokenizer(new BufferedReader(new InputStreamReader(System.in)));
PrintWriter out = new PrintWriter(new OutputStreamWriter(System.out));
in.nextToken();
int N = (int) in.nval;
final int UP = 6, DOWN = 4, WAIT = 5;
int last = 0, cur, delta;
int cost = N * WAIT;
for (int i = 0; i < N; ++i) {
in.nextToken();
cur = (int) in.nval;
delta = Math.abs(cur - last);
if (cur > last) {
cost += UP * delta;
} else {
cost += DOWN * delta;
}
last = cur;
}
out.println(cost);
out.flush();
}
}