全部评论
package a2Test; import java.util.Scanner; public class Max { public static int n; public static long[][] map; public static long result = Long.MIN_VALUE; public static void main(String[] args) { Scanner sc = new Scanner(System.in); n=Integer.parseInt(sc.nextLine()); map = new long[n][n]; for (int i = 0; i < n; i++) for (int j = 0; j < n; j++) map[i][j] = sc.nextLong(); for (int start = 0; start < n; start++) { long[] ring = new long[n]; long[] dp = new long[n]; for (int end = start; end < n; end++) { for (int j = 0; j < n; j++) ring[j] += map[end][j]; result = Math.max(result, ring[0]); dp[0] = ring[0]; for (int j = 1; j < n; j++) { if (dp[j - 1] < 0) dp[j] = ring[j]; else dp[j] = dp[j - 1] + ring[j]; result = Math.max(result, dp[j]); } } } System.out.println(result); } }
真的服了这个笔试题
我提前交卷了啊😂咋办
其实看下标完全可以看的出来是n乘n
ac了
刚开始我始终0.33,我怀疑是不是题目错了,我写的没错,后来对了。
纳尼?改了题目,我还有40多分钟就交了,实在搞不懂第一题
相关推荐
05-29 11:38
浙江工业大学 嵌入式软件开发 点赞 评论 收藏
分享
点赞 评论 收藏
分享