需要面试准备
分治 求和树 是并行归约的标准形状。给定 N 个整数与 K 个 worker,递归把列表对半切,直到每个分块能被一个 worker 处理(大小 ≤ ceil(N / K));每个叶子分块顺序求和(代表一个 worker 在自己片段上的一次本地扫描),内部节点用加法合并孩子的部分和。请实现 solution(values: list[int], n_workers: int) -> dict,模拟这棵归约树,并返回总和、每个 worker 的工作量分布以及树深度。
ceil(N / K)
solution(values: list[int], n_workers: int) -> dict