关注
大佬们,我这种做法对吗?
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[] arr = new int[n];
// 读取数据
for (int i = 0; i < n; i++) {
arr[i] = sc.nextInt();
}
long sum = 0L;
// dp[l][r]记录[l..r]区间的最大值是什么
int[][] dp = new int[n][n];
// 初始情况 区间只有一个元素 => dp[i][i] = arr[i]
for (int i = 0; i < n; i++) {
dp[i][i] = arr[i];
sum += arr[i];
}
// 从区间长度为2的时候开始计算dp 区间长度为 i = l-r+1
for (int i = 2; i <= n; i++) {
// 左端点从0开始,右端点不能大于n 为结束条件
for (int l = 0; i + l -1 < n ; l++) {
int r = i + l - 1;
dp[l][r] = Math.max(arr[r], dp[l][r-1]);
// 累加最大值
sum += dp[l][r];
}
}
int totalCount = (n+1)*n/2;
double res = (double) sum / totalCount;
System.out.format("%.6f", res);
}
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 找工作能把i人逼成什么样 #
14304次浏览 174人参与
# 上班到公司第一件事做什么? #
109131次浏览 734人参与
# 你今年做了几份实习? #
9514次浏览 144人参与
# 工作两年想退休了 #
203138次浏览 1793人参与
# 你开始找寒假实习了吗? #
15653次浏览 210人参与
# 新凯来求职进展汇总 #
64054次浏览 171人参与
# 影石Insta360求职进展汇总 #
166433次浏览 1335人参与
# 大厂面试初体验 #
83476次浏览 384人参与
# 0经验如何找实习? #
26735次浏览 455人参与
# 面试尴尬现场 #
205080次浏览 820人参与
# 大学最后一个寒假,我想…… #
72094次浏览 726人参与
# 25届秋招公司红黑榜 #
306574次浏览 1252人参与
# 什么样的公司千万别去 #
27890次浏览 148人参与
# 大家每天通勤多久? #
64376次浏览 415人参与
# 金融财经春招备战日记 #
43842次浏览 216人参与
# 央国企投递记录 #
165982次浏览 1622人参与
# 你找工作经历过哪些骗局? #
9572次浏览 144人参与
# 机械人值得去的半导体企业 #
32957次浏览 183人参与
# 字节出了豆包coding模型 #
6851次浏览 61人参与
# 一起聊华为 #
168407次浏览 820人参与