시간 제한
메모리 제한
시간 제한
2초
메모리 제한
128 MB
고대의 조각가 세준은 새 작품에 사용할 여러 직사각형 대리석 판을 준비해야 한다. 필요한 판의 크기는 W1×H1, W2×H2, ..., Wn×Hn이다.
세준은 큰 직사각형 대리석 원판 하나를 가지고 있다. 원판은 정수 위치에서 가로 또는 세로 방향으로 끝까지 잘라 두 직사각형으로 나눌 수 있다. 잘라 낸 조각들을 다시 붙여 더 큰 판으로 만들 수는 없다. 또한 판에는 일정한 방향의 무늬가 있으므로 회전해서 사용할 수 없다. 즉, A×B 크기로 잘라 낸 조각은 B×A 크기의 판으로 인정되지 않는다. 원하는 크기의 판으로 사용할 수 없는 남은 조각은 버린다. 세준은 원판을 잘라 버리는 면적을 최소화하려고 한다.

예를 들어 원판의 크기가 21×11이고 사용할 수 있는 판의 크기가 10×4, 6×2, 7×5, 15×10이라고 하자. 그림과 같이 자르면 10×4 판 두 장, 6×2 판 세 장, 7×5 판 세 장을 얻고 버리는 면적은 10이 된다. 15×10 판은 하나라도 만들면 전체 손실이 더 커지므로 만들지 않는 것이 최선이다.
원판의 크기와 사용할 수 있는 판 크기들이 주어질 때, 어떤 크기의 판을 몇 장 얻는지는 상관하지 않는다. 가능한 절단 방법 중 버리는 면적의 합이 최소가 되도록 하는 값을 구하라.
첫 줄에 원판의 가로 길이 W와 세로 길이 H가 주어진다. 둘째 줄에 사용할 수 있는 판 크기의 개수 N이 주어진다. 다음 N줄에는 각 판의 가로 길이와 세로 길이가 주어진다.
1 ≤ W, H ≤ 600이고 0 < N ≤ 200이다. 각 판의 가로 길이와 세로 길이는 모두 1 이상이며 원판의 해당 길이 이하이다.
원판을 가장 효율적으로 잘랐을 때 버리는 면적의 최솟값을 나타내는 정수 하나를 출력한다.