)
预测新能源发电量2026 华为OD机试真题 6月22日华为OD上机新系统考试真题 100 分题型点击查看华为 OD 机试真题完整目录2026最新华为OD机试新系统卷 双机位C卷 真题题库目录全覆盖题库 逐点算法考点详解题目描述某地面光伏电站按区域划分为多个子阵。每个子阵的发电能力有明确的约束发电能力上限max_capacity发电能力下限min_capacity基准发电量base_generation系统需要根据这些约束预测整个电站的发电量。预测策略是每个子阵有一个基准发电量如果总预测发电量超过电站总容量需要按比例缩减如果总预测发电量低于总容量下限需要按比例放大最终预测发电量向上取整为整数2026 华为OD机试真题 6月22日华为OD上机新系统考试真题 100 分题型调整策略缩减场景当总发电量超过电站容量时按各子阵的可用缩减空间比例分配缩减量可用缩减空间 base_generation − min_capacity表示该子阵还能减少多少发电量而不低于下限缩减量按此比例分配缩减量i 总缩减量 × (可用缩减空间i / 总可用缩减空间)放大场景当总发电量低于总下限时按各子阵的可用放大空间比例分配增加量可用放大空间 max_capacity - base_generation表示该子阵还能增加多少发电量而不超过上限增加量按此比例分配增加量i 总增加量 × (可用放大空间i / 总可用放大空间)输入描述sub_arrays: 子阵列表每个子阵是一个三元组[max_capacity, min_capacity, base_generation]均为整数station_capacity: 电站总容量上限整数输出描述返回一维数组每个元素是对应子阵的预测发电量向上整数 如果无法在约束范围内满足总容量要求返回全 0 数组特殊情况处理如果所有子阵都达到下限但仍超过电站容量返回全 0 数组如果所有子阵都达到上限但仍低于总下限返回全 0 数组要求最终预测发电量必须满足min_capacity≤predicted_generation≤max_capacity如果总预测发电量 station_capacity需要按比例缩减如果总预测发电量 总下限各子阵min_capacity之和需要按比例放大最终结果必须向上取整为整数如使用math.ceil示例1输入[[1000, 800, 900],[1200, 900, 1100],[800, 600, 700]],2800输出[900,1100,700]说明示例2输入[[1000, 800, 800],[1200, 900, 900],[800, 600, 600]],2600输出[800,900,600]说明解题思路核心思想本题的核心是根据各子阵的发电能力约束上限、下限、基准值按比例调整预测发电量以满足电站总容量要求。1. 情况判断无需调整总基准发电量在 [总下限, 电站容量] 范围内需要缩减总基准 电站容量按可缩减空间比例分配缩减量需要放大总基准 总下限按可放大空间比例分配增加量2. 缩减策略当总发电量超过电站容量时 - 计算每个子阵的可缩减空间 基准值 - 下限 - 计算总缩减量 总基准 - 电站容量 - 每个子阵的缩减量 总缩减量 × (该子阵可缩减空间 / 总可缩减空间)3. 放大策略当总发电量低于总下限时 - 计算每个子阵的可放大空间 上限 - 基准值 - 计算总增加量 总下限 - 总基准 - 每个子阵的增加量 总增加量 × (该子阵可放大空间 / 总可放大空间)4. 特殊情况如果所有子阵都达到下限但仍超过容量 → 返回全0如果所有子阵都达到上限但仍低于下限 → 返回全0最终结果向上取整复杂度分析时间复杂度O(n)只需遍历子阵数组一次空间复杂度O(n)用于存储中间计