826. 安排工作以达到最大收益;2257. 统计网格图中没有被保卫的格子数;816. 模糊坐标

826. 安排工作以达到最大收益

核心思想:排序+维护最大利润。首先我们需要对工人按照能力排序,前面工人满足的最大利润后面的工人肯定是满足的,所以我们只需要用一个tmp来维护小于等于当前工人的最大利润,然后如何得到tmp,我们用一个指针i来统计工作难度。

826. 安排工作以达到最大收益;2257. 统计网格图中没有被保卫的格子数;816. 模糊坐标_第1张图片

2257. 统计网格图中没有被保卫的格子数

核心思想:BFS扩散,首先将保卫格子变为-1,墙变为-2,然后枚举保卫周围的格子将其扩散,但是扩散不是四周扩散,我们用一个参数k保证其方向的一致性,避免了扩散到了其他方向,最后统计没有扩散到的格子即为0的格子。

826. 安排工作以达到最大收益;2257. 统计网格图中没有被保卫的格子数;816. 模糊坐标_第2张图片

816. 模糊坐标

核心思想:枚举数分开的位置,然后将分开的两个数的所有可能分别装入两个res,然后枚举所有的情况相加,如何统计一个数的所有可能我们可以分情况讨论,代码中很清楚的写了,我就不在赘述了。

826. 安排工作以达到最大收益;2257. 统计网格图中没有被保卫的格子数;816. 模糊坐标_第3张图片

你可能感兴趣的:(python)