AT_abc005_4 [ABC005D] おいしいたこ焼きの焼き方
题目描述
高桥君的章鱼烧店里使用的章鱼烧烤盘有一个很大的特点:不同位置烤出来的章鱼烧美味程度不同。
另外,根据店员的能力,每次能烤的章鱼烧数量也不同。
高桥君希望让每位店员都能尽可能烤出最美味的章鱼烧。
章鱼烧烤盘是一个 $N \times N$ 的正方形。
每个位置都有一个对应的章鱼烧美味度 $D_{ij}$。
每位店员每次最多能烤 $P_k$ 个章鱼烧。
每次烤的章鱼烧必须是烤盘上的一个矩形区域,并且该区域内的所有位置都要用上。
请你对于每位店员,求出他一次能烤出的章鱼烧美味度总和的最大值。
注意,每位店员开始烤的时候,烤盘是完全空的,可以选择任意位置。
输入格式如下所示。
> $N$
> $D_{11}$ $D_{12}$ ... $D_{1N}$
> $D_{21}$ $D_{22}$ ... $D_{2N}$
> ...
> $D_{N1}$ $D_{N2}$ ... $D_{NN}$
> $Q$
> $P_1$
> $P_2$
> ...
> $P_Q$
- 第 1 行输入一个整数 $N$,表示章鱼烧烤盘的边长,$1 \leq N \leq 50$。
- 接下来的 $N$ 行,每行输入 $N$ 个整数 $D_{ij}$,表示每个位置的章鱼烧美味度,$1 \leq D_{ij} \leq 100$。
- 接下来一行输入一个整数 $Q$,表示店员人数,$1 \leq Q \leq N^2$。
- 接下来的 $Q$ 行,每行输入一个整数 $P_k$,表示第 $k$ 位店员一次最多能烤的章鱼烧数量,$1 \leq P_k \leq N^2$。
对于每位店员,输出他一次能烤出的章鱼烧美味度总和的最大值。
每个答案输出后请换行。
如果你能正确解决所有 $1 \leq N \leq 5$ 的测试点,可以获得满分 $100$ 分中的 $50$ 分。
示例:
```
3
3 2 1
2 2 1
1 1 1
3
1
4
9
```
```
3
9
14
```
- 第 1 位店员在左上角烤章鱼烧时美味度总和为 $3$。
- 第 2 位店员在左上角 $2 \times 2$ 的区域烤章鱼烧时美味度总和为 $9$。
- 第 3 位店员可以用整个烤盘,最大美味度总和为 $14$。
这属于部分分的输入。
```
3
1 1 1
1 1 1
9 9 9
1
4
```
```
27
```
- 在最下方一行 $1 \times 3$ 的区域烤章鱼烧时美味度总和为 $27$。
- 这位店员最多能烤 $4$ 个章鱼烧,但只烤 $3$ 个反而美味度更高。
这属于部分分的输入。
输入格式
第 1 行:一个整数 $N$,表示烤盘的边长。
接下来 $N$ 行:每行 $N$ 个整数 $D_{ij}$,表示每个位置的美味度。
接下来一行:一个整数 $Q$,表示店员人数。
接下来 $Q$ 行:每行一个整数 $P_k$,表示每位店员一次最多能烤的章鱼烧数量。
输出格式
对于每位店员,输出他一次能烤出的章鱼烧美味度总和的最大值,每个答案一行。
说明/提示
- 对于 $1 \leq N \leq 5$ 的所有测试点,答对即可获得 $50$ 分。
- 你可以选择比 $P_k$ 更小的矩形区域,只要美味度总和更高即可。
- 每次烤的章鱼烧必须是烤盘上的一个矩形区域,且区域内所有位置都要用上。
- 每位店员开始烤的时候,烤盘是完全空的,可以选择任意位置。
由 ChatGPT 4.1 翻译