题目意思是:给你N个数字 每个数字表示多少层楼 现在要你从0层楼开始坐电梯 一次按顺序走过这些楼层
规则是 上楼6秒 ,下楼4秒,每次到达一个楼层停5秒.....
思路:模拟
代码如下:(要注意的是 如果电梯没动 也就是temp==0,这也是一种情况.....被坑了..)
#include <iostream> #include <stdio.h> #include <string.h> using namespace std; int main() { int n,floor[105]; while(scanf("%d",&n)&&n) { memset(floor,0,sizeof(floor)); int temp,ans=0; for(int i=1; i<=n; i++) { scanf("%d",&floor[i]); temp=floor[i]-floor[i-1]; if(temp>0) { ans+=6*temp+5; } if(temp<0) { ans+=-4*temp+5; } if(temp==0) ans+=5; } printf("%d ",ans); } }