점 네 개의 좌표를 담은 이차원 배열 dots
가 다음과 같이 매개변수로 주어집니다.
주어진 네 개의 점을 두 개씩 이었을 때, 두 직선이 평행이 되는 경우가 있으면 1을 없으면 0을 return 하도록 solution 함수를 완성해보세요.
dots
의 원소 ≤ 100dots
의 길이 = 4dots
의 원소의 길이 = 2dots | result |
---|---|
[[1, 4], [9, 2], [3, 8], [11, 6]] | 1 |
[[3, 5], [4, 1], [2, 4], [5, 10]] | 0 |
def solution(dots):
answer = 0
if slope(dots[0],dots[1]) == slope(dots[2],dots[3]):
answer = 1
if slope(dots[0],dots[2]) == slope(dots[1],dots[3]):
answer = 1
if slope(dots[0],dots[3]) == slope(dots[1],dots[2]):
answer = 1
return answer
def slope(dot1,dot2):
return (dot2[1] - dot1[1] ) / (dot2[0] - dot1[0]) # 기울기 계산 (y축 차이 - x축 차이)
우선 평행하기 위한 조건을 알아야 한다.
이걸 염두해 두고서 각각의 case별로 기울기가 동일한지 여부를 체크하면 된다.