반응형
Notice
Recent Posts
Recent Comments
Link
안경잡이 구루루
백준 9063 (대지) [Python/파이썬] 본문
반응형
https://www.acmicpc.net/problem/9063
9063번: 대지
첫째 줄에는 점의 개수 N (1 ≤ N ≤ 100,000) 이 주어진다. 이어지는 N 줄에는 각 점의 좌표가 두 개의 정수로 한 줄에 하나씩 주어진다. 각각의 좌표는 -10,000 이상 10,000 이하의 정수이다.
www.acmicpc.net
나:
N = int(input())
X =[]
Y =[]
for i in range(N):
x,y = map(int,input().split())
X.append(x)
Y.append(y)
print((max(X)-min(X))*(max(Y)-min(Y)))
완성된 코드는 위와 같다.
문제가 이전과 다르게 매우 길어 살짝 당황했으나 대부분의 내용이 그저 문제를 위한 스토리일 뿐 실제 문제를 풀기위한 부분은 일부분이니 겁먹을 필요가 없다.
(1)
N = int(input())
X =[]
Y =[]
받을 점의 개수를 의미하는 N 정수형 입력값을 받는다.
x, y 좌표계를 사용하고 있으니 입력받을 각 점마다 해당하는 x,y 좌표를 각각 X, Y에 넣어 분리 시키고자 함
(2)
for i in range(N):
x,y = map(int,input().split())
X.append(x)
Y.append(y)
print((max(X)-min(X))*(max(Y)-min(Y)))
위에서 입력받은 N 만큼 반복하며 입력값 x,y 를 공백을 기준으로 분리하여 받는다.
받은 입력값의 각각 x,y 는 리스트 X,Y에 넣는다
문제에서 구해야 하는 '대지'는 각 점들을 기준으로 만든 평행한 직사각형을 만드는 것인데 모든 점이 포함되어야 하기 때문에 넓이가 최대 지점에서 만들어진 직사각형임을 알 수 있다.
그래서 파이썬에서 유용한 함수들 중 하나인 max, min 함수를 이용한 차를 통해 아주 간단히 넓이의 최대를 구할 수 있다.
반응형
'파이썬(Python) > 문제풀이(백준,BaekJoon)' 카테고리의 다른 글
백준 5073 (삼각형과 세 변) [Python/파이썬] (0) | 2023.09.10 |
---|---|
백준 10101 (삼각형 외우기) [Python/파이썬] (0) | 2023.09.03 |
백준 2720 (세탁소 사장 동혁) [Python/파이썬] (0) | 2023.09.01 |
백준 10798 (세로읽기) [Python/파이썬] (0) | 2023.08.31 |
백준 2566 (최댓값) [Python/파이썬] (0) | 2023.08.30 |