首页 > 代码库 > HDU 1008 电梯(AC代码) 水题
HDU 1008 电梯(AC代码) 水题
Accepted 1008 0MS 1088K 475 B C++
居然看到有执行内存0k、代码 168b的C++代码,真是醉了~ how to do it???
1 #include <iostream> 2 using namespace std; 3 void main() 4 { 5 int n,temp=0,ans=0,s=0,i,a; 6 while(scanf("%d",&n)&&n) 7 { 8 for(i=0;i<n;i++) //接收输入 9 { 10 scanf("%d",&a);11 if((s=temp-a)>0)//往下412 ans+=s<<2;13 else14 ans+=(-s)*6;//往上615 temp=a; //更新当前楼层的位置16 }17 printf("%d\n",ans+n*5); //直接输出18 } 19 }
题意:电梯当前在0层,每在1层需要停5秒,往上走每层需6秒,往下走每层需要4秒。
思路:在接收输入的时候直接计算了它,不用再弄一个循环。每计算一个请求就更新当前层,停留5秒的等到输出时再加上5*n就行了。这样老实计算就不需要考虑特殊情况了,比如第一个请求是在0层,是不是得停5秒先?
HDU 1008 电梯(AC代码) 水题
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。