美团笔试 我。。。。

大家来说一下吧,第二道题怎么做到100的?#美团笔试题##美团#
全部评论
    public static void main(String[] args) {         Scanner scanner = new Scanner(System.in);         int n = scanner.nextInt();         int[] arr = new int[n];         for (int i = 0; i < n; i++) {             arr[i] = scanner.nextInt();         }         int tmpArr[] = new int[n];         tmpArr[0] = 1;         for (int i = 1; i < n; i++) {             if (arr[i] > arr[i - 1]) {                 tmpArr[i] = tmpArr[i - 1] + 1;             }else{                 tmpArr[i] = 1;             }         }         int ans = Integer.MIN_VALUE;         for (int i = 1; i < n - 1; i++) {            if(arr[i + 1] > arr[i -1]){                int start = tmpArr[i -1] + 1;                for(int j = i + 1; j < n - 1 && tmpArr[j + 1] > tmpArr[j] ; j++){                    start++;                }                ans = Math.max(ans, start);            }         }         System.out.println(ans);     } AC了
2 回复 分享
发布于 2020-03-19 21:18
我的做法:从左到右遍历得到数组中当前每个数的上升个数。比如:2 1 3 2 5 就是1 1 2 1 2, 然后从右到左遍历,2 1 3 2 5得到的就是1 2 1 2 1。 最后max(res, left[i]+right[i+2])得到答案。 伪代码: for 1 -> n-1     if nums[i] > nums[i-1]         left[i] = left[i-1]+1 for n-2 -> 0     if nums[i] < nums[i+1]         right[i] = right[i+1]+1 for 0 -> n-3     res = max(res, left[i] + right[i+2])
1 回复 分享
发布于 2020-03-19 23:12
[图片]
1 回复 分享
发布于 2020-03-19 22:49
能麻烦发一些这道题的题目吗?
点赞 回复 分享
发布于 2020-03-22 17:08
我发现每次情况删一个数dp一次的话最后只能AC百分之四十多,其他情况超时。然后改了一下,只整体dp一次,然后找到最大数+1能AC百分之七十六😁
点赞 回复 分享
发布于 2020-03-20 15:15
遇到一个逆序的可以无视(因为题目可以删除一个),指针顺势往下移比较大小,不逆序就记录长度更新到结果,逆序就退出这个逆序情况有i和i+2比还有i-1和i+1的两种情况,只做一种只过64,花了好长时间想到另一种把这题a了,我个人是这么个情况
点赞 回复 分享
发布于 2020-03-19 21:21
Dp
点赞 回复 分享
发布于 2020-03-19 21:15
我的做法是这样的,如果检测到一个数,他比两边都大,或者比两边都小(极值,破坏单调的数),就以他为中心向两边搜索两边单调递增递减的区间,加起来。。。
点赞 回复 分享
发布于 2020-03-19 21:10

相关推荐

07-09 18:28
门头沟学院 Java
写着提前批,结果还要实习4个月以上???
程序员牛肉:这种不用看,直接投了,面试的时候问对应的HR就行。有可能他们是直接复制的暑期实习的模板。
点赞 评论 收藏
分享
Twilight_m...:表格简历有点难绷。说说个人看法: 1.个人基本情况里好多无意义信息,什么婚姻状况、健康状况、兴趣爱好、户口所在地、身份证号码、邮政编码,不知道的以为你填什么申请表呢。 2.校内实践个人认为对找工作几乎没帮助,建议换成和测开有关的项目,实在没得写留着也行。 3.工作经历完全看不出来是干什么的,起码看着和计算机没啥关系,建议加强描述,写点你在工作期间的实际产出、解决了什么问题。 4.个人简述大而空,看着像AI生成,感觉问题最大。“Python,C,C++成为我打造高效稳定服务的得力工具”、“我渴望凭借自身技术知识与创新能力,推动人工智能技术的应用发展,助力社会实现智能化转型”有种小学作文的美感。而且你确定你个人简述里写的你都会嘛?你AI这块写的什么“深入研究”,发几篇顶会的硕博生都不一定敢这么写。而且你AI这块的能力和软测也完全无关啊。个人简述建议写你对哪些技术栈、哪些语言、哪些生产工具的掌握,写的有条理些,而且最好是和测开强相关的。
点赞 评论 收藏
分享
评论
3
5
分享

创作者周榜

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