在一个前沿的材料科学研究中,您需要分析一种新型二维晶体材料的能量存储特性。 该晶体可以被建模为一个 N × M 的矩阵 P ,其中每个元素 P_ij 代表在坐标 (i, j) 处的 势能 。 当某个位置的势能低于其所有可能的逃逸路径上的最低势能壁垒时,该位置就可以被视为一个 能量阱 ,能够存储能量。 晶体矩阵的外部空间被定义为势能恒为 0 的区域。 对于晶体中的任意一点 (i, j) ,其 逃逸势能 P_escape(i, j) 定义为从该点移动到晶体外部的所有可能路径中,路径上遇到的最高势能的最小值。 该点能够存储的能量 E_trap(i, j) 为: [ E_trap(i, j) = max(0, P_escape(i, j) - P_ij) ] 您的任务是计算整个晶体材料能够存储的总能量 E_total ,即所有能量阱存储能量的总和: [ E_total = Σ_i=1^N Σ_j=1^M E_trap(i, j) ]
第 1 行 : 输入两个整数 M 和 N ,分别代表晶体矩阵的宽度(列数)和高度(行数)。 其中 M, N ∈ [1, 300] 。 第 2 行到第 N+1 行 : 描述了 N × M 的势能矩阵 P 。 每行包含 M 个整数,代表该行各点的势能。 每个势能值 P_ij ∈ [-500, 8000] 。
输出一个整数,代表整个晶体能够存储的总能量 E_total 。
4 5 0 2 3 4 2 -1 -1 4 2 0 -1 3 4 4 4 4 4 0 0 1
11
1 1 -10
10
4 4 0 2 3 4 2 0 0 4 2 0 0 3 4 4 4 4
8
考点:计算几何
限制 3 秒 / 256MB | 标准输入输出
参考方向:计算几何
把几何关系转成坐标运算,用整数运算避免浮点误差。
思路框架(计算几何 通法 · 非本题专属)
实现要点:叉积 cross = x1*y2 - x2*y1;用它判断顺时针/逆时针和共线。
复杂度:时间 O(n) ~ O(n²) | 空间 O(n)
该范式的通法易错点
本题在源数据中没有官方考点标签,方向由题面特征推断,仅供参考。
样例 1
4 5 / 0 2 3 4 / 2 -1 -1 4 / 2 0 -1 3 / 4 4 4 4 / 4 0 0 111样例 2
1 1 / -1010解析由校招宝本地引擎整理(依据源站考点标签 / 人工判题标注 / 题面规模信号),非官方题解,仅供思路参考。
本题来源:2025年秋招-华为-11月06号留学生开发岗。