码迷,mamicode.com
首页 > 其他好文 > 详细

HDU 1008 电梯(AC代码) 水题

时间:2015-01-14 12:33:41      阅读:127      评论:0      收藏:0      [点我收藏+]

标签:

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)//往下4
12                 ans+=s<<2;
13             else
14                 ans+=(-s)*6;//往上6
15             temp=a;    //更新当前楼层的位置
16         }
17         printf("%d\n",ans+n*5);  //直接输出
18     } 
19 }
1008

题意:电梯当前在0层,每在1层需要停5秒,往上走每层需6秒,往下走每层需要4秒。

思路:在接收输入的时候直接计算了它,不用再弄一个循环。每计算一个请求就更新当前层,停留5秒的等到输出时再加上5*n就行了。这样老实计算就不需要考虑特殊情况了,比如第一个请求是在0层,是不是得停5秒先?

HDU 1008 电梯(AC代码) 水题

标签:

原文地址:http://www.cnblogs.com/xcw0754/p/4223536.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!