当前位置: 首页 > news >正文

44. 开发商购买土地

44. 开发商购买土地

前缀和

思路
可能的情况有两类,A占前 i 行,B占剩余行;A占前 j 列,B占剩余列。
若直接暴力枚举,第一层 for 循环遍历行(控制行的切分),第二层、第三层 for 循环计算A区域中元素和,时间复杂度O(n^3)。
1、计算每行的和,得到行前缀和数组horizontoal,horizontoal[i]表示第i行元素和,
计算每列的和,得到列前缀和数组vertical,vertical[j]表示第j行元素和。
2、枚举按行切分的情况,计算差值,
枚举按列切分的情况,计算差值。
时间复杂度O(n^2)

import java.util.Scanner;public class Main {public static void main (String[] args) {Scanner scanner = new Scanner(System.in);int n = scanner.nextInt();int m = scanner.nextInt();int sum = 0;int[][] vec = new int[n][m];// 初始化并计算数组元素和for (int i = 0; i < n; i++) {for (int j = 0; j < m; j++) {vec[i][j] = scanner.nextInt();sum += vec[i][j];}}// 行前缀和int[] horizontoal = new int[n];for (int i = 0; i < n; i++) {for (int j = 0; j < m; j++) {horizontoal[i] += vec[i][j];}}// 列前缀和int[] vertical = new int[m];for (int j = 0; j < m; j++) {for (int i = 0; i < n; i++) {vertical[j] += vec[i][j];}}int res = Integer.MAX_VALUE;// 水平切分int horizontoalCut = 0; // 前 i 行元素的和for (int i = 0; i < n; i++) {horizontoalCut += horizontoal[i];res = Math.min(res, Math.abs(horizontoalCut - (sum - horizontoalCut)));}// 垂直切分 int verticalCut = 0; // 前 j 列元素的和for (int j = 0; j < m; j++) {verticalCut += vertical[j];res = Math.min(res, Math.abs(verticalCut - (sum - verticalCut)));}System.out.println(res);scanner.close();}
}

进阶

前缀和(优化)

http://www.zskr.cn/news/20349.html

相关文章:

  • 当AI与机器人走进生活:我们即将迎来的日常变革
  • net中使用了垃圾回收机制(GC)功能
  • 2025 超景深三维显微镜厂家 TOP10 推荐:三维成像技术的行业应用标杆​
  • 2025年国内铝单板工厂推荐/国内铝单板厂家/ 市场铝单板推/公司榜荐
  • 一个老码农的掏心窝推荐:微擎,我后悔没早点遇到的开发利器
  • HyperWorks许可证使用报告生成
  • 小程序 拖动节点
  • ORA-00604: 递归 SQL 级别 1 出现错误 ORA-01000: 超出打开游标的最大数
  • 10月13号
  • gitreset、revert
  • 深圳社保_公积金(深圳补交之前月份的公积金)
  • 工业相机传感器CCD的原理及基础知识
  • 20232406 2025-2026-1 《网络与系统攻防技术》实验一实验报告
  • 深入解析:Qt常用控件之QSpinBox
  • win11系统,右键新建记事本没有了
  • 2025 年变电站厂家推荐榜:撬装/移动车载/预制舱式/移动/预装式变电站厂家,聚焦技术与服务,助力电力建设高效推进
  • 详细介绍:[wps_clear]wps清理残余 ——注册表不干净
  • 常见应用案例,AI应用开发流程
  • 计算机视觉(opencv)——基于 dlib 的实时摄像头人脸检测 - 教程
  • vmware部署win7,win2008,win2012等系统如何手动安装vmware tools
  • 2025 年漆包线制造厂最新推荐排行榜:极细合金 / 自粘铜包铝 / 医疗消融合金等多类型线材企业精选,助力采购商精准挑选优质品牌
  • 你真的会在SQL Plus中设置行宽吗?
  • 2025 年 NMN 怎么选?Japan KSKN,抗衰领域的实力之选
  • 2025 CSP-S 邮寄
  • CF1442C Graph Transpositions 比正确答案大了1
  • 视频抽帧完全指南:使用PowerShell批量提取与优化图片序列 - 教程
  • 10-7
  • 10-11
  • 安装fastasr遇到的问题记录
  • 微服务项目启动出现NacosException: Client not connected, current status:STARTING异常