문제 보기 : 평행
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
문제
작성 코드
def dt(i,j):
x1,y1 = i[0],i[1]
x2,y2 = j[0],j[1]
xx = x2-x1
yy = y2-y1
return xx/yy
def solution(dots):
answer = 0
if dt(dots[0],dots[1]) == dt(dots[2],dots[3]):
return 1
elif dt(dots[0],dots[2]) == dt(dots[1],dots[3]):
return 1
elif dt(dots[0],dots[3]) == dt(dots[1],dots[2]):
return 1
return 0
풀이
정답률이 왜 낮은지 모르겠지만, 비교적 간단한 문제였다.
평행 여부를 판단할 때는 기울기만 비교하면 되기 때문에 기울기를 구하는 함수를 따로 정의해두고 풀이했다.
조합 가능한 경우의 수도 다른 한쌍이 저절로 구해지는 탓에 3개의 쌍만 가능해서 더 간단하게 풀이했다.