想知道华为笔试第三题错在哪里

import java.util.*;
public class Main {
    public static void main(String[] args) {
        Scanner cn = new Scanner(System.in);
        String s = cn.nextLine();
        String[] words = s.split(", ");
        int n = words.length;
        int[] a = new int[words.length];
        for(int i = 0 ; i < n ;i++){
            a[i] = Integer.parseInt(words[i]);
            //System.out.println(a[i]);
        }
        int[] dp = new int[1000];
        dp[0] = a[0];
        int res = a[0];
        for(int j = 1 ; j < n ; j++)   {
            if( dp[j-1] < 0 )
                dp[j] = a[j] ;
            else
                dp[j] = dp[j-1] + a[j] ;
            res = Math.max(res,dp[j]);
        }
        System.out.println(res);
    }
}
全部评论
我直接人工判断输入了,一个字符一个字符判断是不是数字或者负号,然后全过了。。。
点赞 回复 分享
发布于 2018-03-28 20:33
感觉笔试满分的一堆。自己被卡在最后一题,以为是方法错了,结果换了三种方法求解,都是百分之20,事后才知道是输入的问题。凉凉。。。
点赞 回复 分享
发布于 2018-03-29 18:02
写了个循环一个个读出来...
点赞 回复 分享
发布于 2018-03-28 21:40
恶心的一比😂
点赞 回复 分享
发布于 2018-03-28 21:34
华为软件工程师的优秀的代码能力让我真心见识到了
点赞 回复 分享
发布于 2018-03-28 21:20
第三题提高了盲改程序的水平😂,IDE里跑的好好的,粘到框里bug了😂。一行一行看输出debug,神奇的经历…
点赞 回复 分享
发布于 2018-03-28 21:20
我也是在逗号空格那出问题,看到楼上才想明白题目中是没有空格的,而我以为有空格,用的spilt(", ")
点赞 回复 分享
发布于 2018-03-28 21:08
第三题写了一个半小时,***还没找到怎么错的,我换了几个算法还说我超时
点赞 回复 分享
发布于 2018-03-28 21:07
我就想问这个到底谁的锅?
点赞 回复 分享
发布于 2018-03-28 21:05
空格
点赞 回复 分享
发布于 2018-03-28 21:00
 String[] words = s.split(", ")改成 String[] words = s.split(",") a[i] = Integer.parseInt(words[i])前面加上words[i] = words[i].trim(); 100%通过的
点赞 回复 分享
发布于 2018-03-28 20:49
对的,我也一直不对,后来试了一下,发现其实没有空格的,只有逗号隔开。真是坑,用了好长时间找bug
点赞 回复 分享
发布于 2018-03-28 20:27
第一题为啥通过率不是100%。求解
点赞 回复 分享
发布于 2018-03-28 20:25
问了两次牛客的工作人员,都是复制黏贴的回答 这题错了能有十几次,我真是***了
点赞 回复 分享
发布于 2018-03-28 20:24
这题有的分割结果不能转换成int,你要跳过去。否则只能过三分之一。
点赞 回复 分享
发布于 2018-03-28 20:22
我一开始一直是超时 后来一直是0.00% 无语了
点赞 回复 分享
发布于 2018-03-28 20:21
split(", ")  改称 split(",")
点赞 回复 分享
发布于 2018-03-28 20:20

相关推荐

程序员小白条:这比例牛逼,750:1
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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