QOJ.ac

QOJ

実行時間制限: 1 s メモリ制限: 64 MB 満点: 100

#13806. 斐迪亚斯

統計

著名的古希腊雕塑家菲迪亚斯(Phidias)正在为建造另一座宏伟的纪念碑做准备。为此,他需要尺寸为 $W_1 \times H_1, W_2 \times H_2, \dots, W_N \times H_N$ 的矩形大理石板。

最近,菲迪亚斯收到了一块巨大的矩形大理石板。他希望切开这块石板以获得所需尺寸的石板。任何一块大理石(原始石板或切出的石板)都可以水平或垂直地切成两块具有整数宽度和高度的矩形石板,且必须完全切透。这是唯一的切割方式,且切开的石板不能重新拼接。由于大理石上有花纹,因此石板不能旋转:如果菲迪亚斯切出了一块尺寸为 $A \times B$ 的石板,除非 $A = B$,否则它不能被当作尺寸为 $B \times A$ 的石板使用。每种所需尺寸的石板他可以制作零个或多个。在所有切割完成后,如果某块大理石板不属于任何一种所需的尺寸,它就会被浪费。菲迪亚斯想知道如何切割初始石板,才能使浪费的总面积尽可能小。

例如,假设在下图中,原始石板的宽度为 21,高度为 11,而所需的石板尺寸为 $10 \times 4$、$6 \times 2$、$7 \times 5$ 和 $15 \times 10$。最小可能浪费的面积为 10,下图展示了一种总浪费面积为 10 的切割方案。

你的任务是编写一个程序,在给定原始石板尺寸和所需石板尺寸的情况下,计算必须浪费的原始石板的最小总面积。

输入格式

第一行包含两个整数:首先是原始石板的宽度 $W$,然后是原始石板的高度 $H$。

第二行包含一个整数 $N$:所需石板尺寸的数量。

接下来的 $N$ 行包含所需的石板尺寸。这些行中的每一行都包含两个整数:首先是该所需石板尺寸的宽度 $W_i$,然后是高度 $H_i$($1 \le i \le N$)。

输出格式

输出仅包含一行,其中包含一个整数:必须浪费的原始石板的最小总面积。

样例

输入样例 1

21 11
4
10 4
6 2
7 5
15 10

输出样例 1

10

数据范围

在所有输入中,$1 \le W \le 600$,$1 \le H \le 600$,$0 < N \le 200$,$1 \le W_i \le W$,且 $1 \le H_i \le H$。

此外,在 50% 的输入中,$W \le 20$,$H \le 20$ 且 $N \le 5$。

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.