이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
from itertools import combinations
import sys
input = lambda: sys.stdin.readline().strip()
n,m,d = map(int, input().split())
a = []
b = []
for i in range(n):
x,y = map(int, input().split())
a.append([x,y])
for i in range(m):
x,y = map(int, input().split())
b.append([x,y])
X = []
Y = []
for i in a:
X.append(i[0])
Y.append(i[1])
ans = 1000000000
for i in range(2**(len(b))):
x = list(X)
y = list(Y)
for j in range(len(b)):
if (i&(2**j)):
x.append(b[j][0])
else:
y.append(b[j][1])
xx = 1000000000
yy = 1000000000
for i in range(len(x)-1):
xx = min(xx, d-(x[i+1]-x[i])+1)
xx = min(xx, x[-1]-x[0]+1)
for i in range(len(y)-1):
yy = min(yy, d-(y[i+1]-y[i])+1)
yy = min(yy, y[-1]-y[0]+1)
ans = min(ans, xx*yy)
print(ans)
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |