s2巅峰青铜第三题java代码过不去

    public long tree2 (int k, int[] a) {
        // write code here
        long sum=0;
        for(int i=0;i<a.length;i++){
            for(int x=1;x<=k;x++){
                int s=i*k+x;
                if(s>=a.length){
                    break;
                }else{
                    sum+=(a[i]^a[s]);
                }
            }
        }
        //System.out.print(sum);
        return sum;
    }

就这个代码我改成C++就过了,只改了length成size()和long改成long long,邪门了。java过了90%。
大佬能不能帮看看为啥没过。
全部评论
我也90%, 应该是超时了。  你把你那个break换成return sum;  应该就过了。。 这么写复杂度是O(n*k)的
点赞 回复 分享
发布于 2020-11-20 21:53

相关推荐

02-08 20:56
已编辑
南京工业大学 Java
在等offer的比尔很洒脱:我也是在实习,项目先不说,感觉有点点小熟悉,但是我有点疑问,这第一个实习,公司真的让实习生去部署搭建和引入mq之类的吗,是不是有点过于信任了,我实习过的两个公司都是人家正式早搭好了,根本摸不到部署搭建的
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务