Problem - 1008 Elevator

可以说是非常愚蠢了,看错题之后又提交了n次才成功。

原题说明链接 http://acm.hdu.edu.cn/showproblem.php?pid=1008

一开始没看到第一个数字是表示数目,纠结了半天看不懂样例输出尴尬。

看了网上的教程也直接注意到 原来继续停留在同一楼层要+5s。算是提前知道了吧。

第一次提交的代码

#include <stdio.h>
int main( )
{
    int a [ 105 ] ;
    int n, i, sum;
    a [ 0 ] = 0 ;
    sum = 0;
    while ( scanf ("%d",&n) && n != 0 )
    {
        for ( i = 1 ; i <= n; i++ )
            scanf( "%d",&a[ i ] );

        for ( i = 1 ; i <= n; i++ )
        {
            if ( a [ i ] > a [ i - 1 ] )
                sum = sum + ( a [ i ] - a [ i -1 ] ) * 6 + 5 ;
            else if ( a [ i ] < a [ i - 1 ])
                sum = sum + ( a [ i - 1 ] - a [ i ] ) * 4 + 5 ;
            else if ( a [ i ] = a [ i - 1 ] )
                sum = sum + 5;
        }
        printf ("%d\n",sum);
    }

    return 0 ;
}

但是第一次测试数据的时候好像也没发现有错误???

但提交一直说结果错误???

最后看了网上的代码才对比出错误,真是愚蠢,犯了两次同样的错误。

正确代码如下

#include <stdio.h>
int main( )
{
    int a [ 105 ] ;
    int n, i, sum;

    while ( scanf ("%d",&n) && n != 0 )
    {
        a [ 0 ] = 0;
        sum = 0;
        for ( i = 1 ; i <= n; i++ )
            scanf( "%d",&a[ i ] );

        for ( i = 1 ; i <= n; i++ )
        {
            if ( a [ i ] > a [ i - 1 ] )
                sum = sum + ( a [ i ] - a [ i -1 ] ) * 6 + 5 ;
            else if ( a [ i ] < a [ i - 1 ])
                sum = sum + ( a [ i - 1 ] - a [ i ] ) * 4 + 5 ;
            else if ( a [ i ] = a [ i - 1 ] )
                sum = sum + 5;
        }
        printf ("%d\n",sum);
    }

    return 0 ;
}

感谢各位网上的大佬们!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值