今天网易笔试编程题“调整队形”,本地和线上运行结果不一样

public static void main(String[] args){
        Scanner in = new Scanner(System.in);
        String[] queues = in.nextLine().split("");

        ArrayList<Integer> G_Index = new ArrayList<>();
        for(int i=0;i<queues.length;i++){
            if(queues[i].equals("G"))
                G_Index.add(i);
        }

        int sum1 = 0; 
        for(int i=0;i<G_Index.size();i++){
            sum1 += G_Index.get(i)-i;
        }

        int sum2 = 0;
        for(int i=G_Index.size()-1,j=queues.length-1;i>=0;i--,j--){
            sum2 += j-G_Index.get(i);
        }

        System.out.println(Math.min(sum1, sum2));
    }

图片说明 图片说明 同样的输入,输出结果不一样,请教一下为什么会这样

全部评论
直接转array更好
点赞 回复 分享
发布于 2017-03-26 07:24
自己顶一下,终于找到原因了 上面的代码,jdk1.8输出的长度是5,jdk1.7输出的长度是6
点赞 回复 分享
发布于 2017-03-25 21:29

相关推荐

我就是0offer糕手:北大不乱杀
点赞 评论 收藏
分享
04-18 15:58
已编辑
门头沟学院 设计
kaoyu:这一看就不是计算机的,怎么还有个排斥洗碗?
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务