关注
腾讯遮体是否可以这样,因为不能排序,所以数据其实没有规律,直接dp感觉是没法做到的,只能采用for循环,但是可以优化,程序还有优化空间,但是不想优化了 import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class findSubsegmentMax {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
String str = sc.nextLine();
String[] str_1 = str.split(" ");
List<Integer> list = new ArrayList<Integer>();
for(int i=0; i<str_1.length; i++) {
list.add(Integer.parseInt(str_1[i]));
}
int n = list.size(), maxNum=0;
System.out.println("n: " + n);
int[] res;
for(int i=0; i<list.size(); i++) {
while(i < n) {
res = find(list, i, n);
if(maxNum < res[0]) maxNum = res[0];
n = res[1] - 1;
}
n = list.size();
}
System.out.println(maxNum);
}
public static int[] find(List<Integer> list, int m, int n) {
Integer min=list.get(m), sum=0, index=-1;
for(int i=m; i<n; i++) {
if(min > list.get(i)) {
min = list.get(i);
index = i;
}
sum += list.get(i);
}
sum *= min;
// System.out.println("sum and index: " + sum + " " + index);
int[] ret = {sum, index};
return ret;
}
}
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 我的求职总结 #
482613次浏览 6824人参与
# Vibe Coding 会干掉初级岗位吗? #
50839次浏览 320人参与
# 26届春招投递记录 #
14092次浏览 91人参与
# 职场吐槽大会 #
360670次浏览 2305人参与
# 27届实习投递记录 #
80187次浏览 869人参与
# 机械人还在等华为开奖吗? #
341681次浏览 1654人参与
# 拼多多工作体验 #
62178次浏览 436人参与
# AI让海力士市值突破9000亿美元 #
9743次浏览 125人参与
# 我是XXX,请攻击我最薄弱的地方 #
93321次浏览 631人参与
# 牛油的搬砖plog #
206693次浏览 1332人参与
# 运营每日一题 #
147348次浏览 981人参与
# 蚂蚁求职进展汇总 #
175787次浏览 1297人参与
# 什么专业适合考公 #
72826次浏览 456人参与
# 小厂实习有必要去吗 #
94716次浏览 450人参与
# 这些公司卡简历很严格 #
107762次浏览 496人参与
# 华为工作体验 #
331251次浏览 1437人参与
# 正在实习的你,有转正机会吗? #
523794次浏览 3099人参与
# AI Coding实战技巧 #
31682次浏览 396人参与
# 荣耀求职进展汇总 #
1197818次浏览 5681人参与
# 面试常问题系列 #
310780次浏览 4800人参与
