평행 - Python
2023. 10. 2. 00:55ㆍ공부/📝 프로그래머스
def degree(dot, num1, num2):
return (dot[num2][1] - dot[num1][1]) / (dot[num2][0] - dot[num1][0])
def solution(dot):
if degree(dot, 0, 1) == degree(dot, 2, 3):
return 1
elif degree(dot, 0, 2) == degree(dot, 1, 3):
return 1
elif degree(dot, 0, 3) == degree(dot, 1, 2):
return 1
else:
return 0
# Test Cases
print(solution([[1, 4], [9, 2], [3, 8], [11, 6]]))
print("=" * 50)
print(solution([[3, 5], [4, 1], [2, 4], [5, 10]]))
print("=" * 50)
위와 같이 풀었습니다.
def solution(dots):
[[x1, y1], [x2, y2], [x3, y3], [x4, y4]]=dots
answer1 = ((y1-y2)*(x3-x4) == (y3-y4)*(x1-x2))
answer2 = ((y1-y3)*(x2-x4) == (y2-y4)*(x1-x3))
answer3 = ((y1-y4)*(x2-x3) == (y2-y3)*(x1-x4))
return 1 if answer1 or answer2 or answer3 else 0
찾아보니 저보다 훨씬 가독성이 좋은 코드가 있네요. 좋습니다.
'공부 > 📝 프로그래머스' 카테고리의 다른 글
자릿수 더하기 - Python (0) | 2023.10.05 |
---|---|
x만큼 간격이 있는 n개의 숫자 - Python (0) | 2023.10.05 |
옹알이 (1) - Python (0) | 2023.10.02 |
겹치는 선분의 길이 - Python (0) | 2023.10.01 |
안전지대 - Python (0) | 2023.10.01 |