kwan's note

백준 11758번 CCW 파이썬 (python code) 본문

Algorithm/python

백준 11758번 CCW 파이썬 (python code)

kwan's note 2021. 1. 17. 19:01
반응형

문제번호: 11758

난이도 : 골드5

 

시계, 반시계를 판단하는 문제이다.

벡터에 대한 기본개념이 있으면 코딩을 잘 못해도 풀 수 있는문제이다.

두 벡터의 외적을 통해 양수, 음수, 0을 판별하여 계산하였다.

 

알고리즘 수업의 과제였던 convex hull에서 유사한 방식을 사용한 경험이 있어 비교적 쉽게 풀었다.

 

www.acmicpc.net/problem/11758

 

 

11758번: CCW

첫째 줄에 P1의 (x1, y1), 둘째 줄에 P2의 (x2, y2), 셋째 줄에 P3의 (x3, y3)가 주어진다. (-10,000 ≤ x1, y1, x2, y2, x3, y3 ≤ 10,000) 모든 좌표는 정수이다. P1, P2, P3의 좌표는 서로 다르다.

www.acmicpc.net

 

각 좌표를 받은뒤 outer product를 계산하고 이를 이용하였다.

 

x1,y1 = map(int,input().split())
x2,y2 = map(int,input().split())
x3,y3 = map(int,input().split())
outp = (x2-x1)*(y3-y2)-(x3-x2)*(y2-y1)
if outp>0:
    print(1)
elif outp<0:
    print(-1)
else:
    print(0)

 

반응형