注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

奕克

爱家人爱工作爱生活

 
 
 

日志

 
 

从hdu2070题来看在线提交时边界测试数据的注意  

2013-11-29 11:34:14|  分类: ACM |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
        前几天用另一种不用数组的方式做这个题,代码如下:
#include "stdio.h"
int n;
main()
{
    int i;
    __int64 f0=0,f1=1,f2;
    scanf("%d",&n);
    while(n>-1)
    {   f0=0; f1=1;
   for(i=2;i<=n;i++)
          {f2=f0+f1;
           f0=f1;
           f1=f2;}
       printf("%I64d\n",f2);
       scanf("%d",&n);
    }
}

 这样的代码本地测试数据都没有问题,在线提交就是WA,后来才发现没有考虑到边界数据第1项和第2项,这两项的时候f2根本没有值,所以改成如下代码AC:
#include "stdio.h"
int n;
main()
{
    int i;
    __int64 f0=0,f1=1,f2;
    scanf("%d",&n);
    while(n>-1)
    {   f0=0; f1=1;
   for(i=2;i<=n;i++)
          {f2=f0+f1;
           f0=f1;
           f1=f2;}
       if (n==0) printf("0\n");
        else if (n==1) printf("1\n");
         else printf("%I64d\n",f2);
       scanf("%d",&n);
    }
}

所有但本地数据正确而在线提交出错时,要特别注意一些边界数据有没有考虑到。
  评论这张
 
阅读(61)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017