nueijeel
[프로그래머스][python] Lv.0 - 평행 본문
문제 설명
점 네 개의 좌표를 담은 이차원 배열 dots가 다음과 같이 매개변수로 주어집니다.
[[x1, y1], [x2, y2], [x3, y3], [x4, y4]]
주어진 네 개의 점을 두 개씩 이었을 때, 두 직선이 평행이 되는 경우가 있으면 1을 없으면 0을 return 하도록 solution 함수를 완성해보세요.
해결 단계
두 직선이 평행(혹은 일치)인지 알아보려면 두 직선의 기울기를 비교하면 된다.
두 점 (x1, y1), (x2, y2)를 지나는 직선의 기울기 : ( y1 - y2 ) / ( x1 - x2 )
작성한 코드
def find(dot1, dot2):
return (float)(dot1[1]-dot2[1])/(float)(dot1[0]-dot2[0])
def solution(dots):
answer = 0
if find(dots[0],dots[1])==find(dots[2],dots[3]):
answer = 1
elif find(dots[0],dots[2])==find(dots[1],dots[3]):
answer = 1
elif find(dots[0],dots[3])==find(dots[2],dots[1]):
answer = 1
return answer
처음에 무의식적으로 일반 나눗셈(/)이 아니라 몫 구하는 나눗셈(//)을 해버렸다...ㅋㅋㅋ
728x90
'코딩테스트 > 프로그래머스' 카테고리의 다른 글
[프로그래머스][python] Lv.0 - 캐릭터의 좌표 (0) | 2023.02.14 |
---|---|
[프로그래머스][python] Lv.0 - 외계행성의 나이 (0) | 2023.02.14 |
[프로그래머스][python] Lv.0 - 최빈값 구하기 (0) | 2023.02.09 |
[프로그래머스][python] Lv.0 - 옹알이 (0) | 2023.02.08 |
[프로그래머스][python] Lv.0 - 분수의 덧셈 (0) | 2023.02.08 |