CodeForces 230A Dragons

来源:互联网 发布:redis重启后数据丢失 编辑:程序博客网 时间:2024/05/01 09:26

    题目链接:http://vjudge.net/problem/viewProblem.action?id=32629

   这道题目,水!!!但做的我想骂街,训练赛的时候一直想着,这么水的题如果不A掉,怎么好意思往下面做。然而就是这道题,把我死死卡住了,各种各样的问题,有的都是我之前没有遇到的错误,难怪搞ACM的很少人使用 Java 编写代码,太TM变态了。

    下面是我解决这个问题中遇到的所有错误,为以后提个醒吧。

     其实这道题目首先我考虑错了,用到了栈,利用它的FILO性质,把不符合条件的压入栈,符合条件的进行运算,然后以栈是否为空判断输出结果:


错误1:Source  Code  Error
          其实这个错误如果长时间用 java 搞ACM的完全可以避免,ACM 要求java代码只能有一个类,即  public  class Main{ ........},如果在这个类外又定义的一个新类就会出现这个错误,把新定义的类放到Main类下即可,以为我是第一次遇到这个错误,所以当时感觉无从下手,不知道怎么解决,网上也没有找到答案,还是经过好心的队长提醒才发现这个错误。

错误2:Compilation error

             这个问题经常遇到,但错误的地方出乎我的意料
错误1处是由于GDK编码问题,错误2处却实在不知道什么原因,我把 i < n - 1;处用 t = n - 1; i< n - 1;替换后,错误消失,很是纳闷。

         另外,Eclipse编写Java时,它会时不时的抽下风,在创建扫描器 Scanner 对象的部分( Scanner    scan = new   Scanner(System.in) ),有时会出现创建的扫描器对象没有关闭的警示,最好不要管他,因为你一旦重视了它,在后面添了一句  scan.close()  语句,那提交的时候,就会连第一个测试数据都过不了。

         其他还有一些大大小小的问题,都是一些常见问题,只要稍加注意就可避免。

下面是我AC的Java代码:
下面是看到的别人代码,只是读取数据的方式不对,他的方式避免了对回车键的意外读入,但增加了耗时,其实只要在我的代码中添加 scan.nextLine() 语句,同样可避免这个问题,贴他的代码只是用来学习下他的数据录入方式:


0 0
原创粉丝点击