ํ‹ฐ์Šคํ† ๋ฆฌ ๋ทฐ

 

๐Ÿ“ ๋ฌธ์ œ ํƒ์ƒ‰ํ•˜๊ธฐ

ํฌ๊ธฐ๊ฐ€ H × W์ธ ๋ชจ๋ˆˆ์ข…์ด์™€ N๊ฐœ์˜ ์Šคํ‹ฐ์ปค๊ฐ€ ์žˆ๋‹ค.
๊ฐ ์Šคํ‹ฐ์ปค๋Š” Ri × Ci ํฌ๊ธฐ์ด๋ฉฐ, ์Šคํ‹ฐ์ปค 2๊ฐœ๋ฅผ ๊ฒน์น˜์ง€ ์•Š๊ฒŒ ๋ถ™์ด๋ ค๊ณ  ํ•œ๋‹ค.
์Šคํ‹ฐ์ปค๋Š” 90๋„ ํšŒ์ „์ด ๊ฐ€๋Šฅํ•˜๋ฉฐ, ์ข…์ด๋ฅผ ๋ฒ—์–ด๋‚˜์„œ๋Š” ์•ˆ ๋œ๋‹ค.
๋‘ ์Šคํ‹ฐ์ปค๊ฐ€ ์ฐจ์ง€ํ•˜๋Š” ๋„“์ด์˜ ์ตœ๋Œ“๊ฐ’์„ ๊ตฌํ•ด์•ผ ํ•œ๋‹ค.


๐Ÿ“‹ ๋ฌธ์ œ ์กฐ๊ฑด

  • 1 ≤ H, W, N ≤ 100
  • 1 ≤ Ri, Ci ≤ 100
  • ์Šคํ‹ฐ์ปค์˜ ๋ณ€์€ ๋ชจ๋ˆˆ์ข…์ด์˜ ์„ ๊ณผ ์ผ์น˜ํ•ด์•ผ ํ•œ๋‹ค.
  • ์Šคํ‹ฐ์ปค๋ผ๋ฆฌ ๊ฒน์น˜๋Š” ๊ฒƒ์€ ๋ถˆ๊ฐ€๋Šฅํ•˜์ง€๋งŒ, ์ ‘ํ•˜๋Š” ๊ฒƒ์€ ๊ฐ€๋Šฅํ•˜๋‹ค.
  • ๋‘ ์Šคํ‹ฐ์ปค๋ฅผ ๋ถ™์ผ ์ˆ˜ ์—†์œผ๋ฉด 0์„ ์ถœ๋ ฅํ•œ๋‹ค.

โฑ๏ธ ์‹œ๊ฐ„ ๋ณต์žก๋„ ๊ณ ๋ ค

  • ๋ธŒ๋ฃจํŠธํฌ์Šค ์ ‘๊ทผ:
    ๋‘ ๊ฐœ์˜ ์Šคํ‹ฐ์ปค๋ฅผ ์„ ํƒํ•˜๊ณ , ๊ฐ๊ฐ์„ ํšŒ์ „์‹œํ‚ค๋Š” ๋ชจ๋“  ๊ฒฝ์šฐ๋ฅผ ํƒ์ƒ‰ํ•ด์•ผ ํ•œ๋‹ค.
  • ์ตœ๋Œ€ ๊ฒฝ์šฐ์˜ ์ˆ˜:
    • ์Šคํ‹ฐ์ปค ์„ ํƒ: ์•ฝ 5,000์Œ (100C2)
    • ๊ฐ ์Šคํ‹ฐ์ปค๋‹น 2๊ฐ€์ง€ ํšŒ์ „ → ์ด 4๊ฐ€์ง€ ๊ฒฝ์šฐ
    • ์ตœ๋Œ€ 20,000๋ฒˆ ํƒ์ƒ‰ → ์‹œ๊ฐ„ ์ œํ•œ 2์ดˆ ๋‚ด ์ถฉ๋ถ„ํžˆ ๊ฐ€๋Šฅํ•˜๋‹ค.

๐Ÿ“ ์ฝ”๋“œ ์„ค๊ณ„ํ•˜๊ธฐ

  1. ์Šคํ‹ฐ์ปค ๋‘ ๊ฐœ๋ฅผ ์„ ํƒํ•œ๋‹ค.
  2. ๊ฐ ์Šคํ‹ฐ์ปค๋ฅผ ํšŒ์ „(90๋„) ํ•œ ๊ฒฝ์šฐ๋„ ๊ณ ๋ คํ•œ๋‹ค.
  3. ์Šคํ‹ฐ์ปค๋ฅผ ๊ฐ€๋กœ๋กœ ๋‚˜๋ž€ํžˆ, ๋˜๋Š” ์„ธ๋กœ๋กœ ๋‚˜๋ž€ํžˆ ๋ถ™์ผ ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธํ•œ๋‹ค.
  4. ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋ฉด ๋„“์ด์˜ ํ•ฉ์„ ๊ตฌํ•˜๊ณ , ์ตœ๋Œ€๊ฐ’์„ ๊ฐฑ์‹ ํ•œ๋‹ค.

๐Ÿ“ ์‹œ๋„ ํšŒ์ฐจ ๋ฐ ์ˆ˜์ • ์‚ฌํ•ญ

import sys
input = sys.stdin.readline

H, W = map(int, input().split())
N = int(input())

lst = []
result = []

for _ in range(N):
    R, C = map(int, input().split())
    lst.append([R,C])
    
max_area = 0

for i in range(len(lst)-1):
    for j in range(i+1, len(lst)):
        (r1, c1) = lst[i]
        (r2, c2) = lst[j]
        
        for (nr1, nc1) in [(r1, c1), (c1, r1)]:
            for (nr2, nc2) in [(r2, c2), (c2, r2)]:
                if (nr1 + nr2 <= H) and (max(nc1, nc2) <= W):
                    max_area = max(max_area, nr1 * nc1 + nr2 * nc2)

                if (max(nr1, nr2) <= H) and (nc1 + nc2 <= W):
                    max_area = max(max_area, nr1 * nc1 + nr2 * nc2)
                    
print(max_area)