본문 바로가기
알고리즘

백준_11758_CCW(CCW, 기학와 벡터)

by 매화of사군자 2020. 3. 1.

https://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

해결 방법

> CCW를 이용한다.

 

CCW

https://degurii.tistory.com/47

 

[알고리즘] CCW로 세 점의 방향성 판별하기

첫 알고리즘 포스트입니다. 이번에 쓸 내용은 CCW입니다. 원래는 기하 알고리즘들을 전반적으로 다루려고 했는데 생각보다 글이 길어져서 CCW만 쓰게 되었습니다. 본 글의 내용은 고등학교 과정(2007 개정 교육과..

degurii.tistory.com

 

코드

더보기

def ccw(x1,y1,x2,y2,x3,y3):

    check = (x2-x1)*(y3-y1) - (x3-x1)*(y2-y1)

    return check

 

info = []

for i in range(3):

    info.append(list(map(int,input().split())))

 

info = sum(info,[])

a = ccw(info[0],info[1],info[2],info[3],info[4],info[5])

if a > 0:

    print(1)

elif a < 0:

    print(-1)

else:

    print(0)

'알고리즘' 카테고리의 다른 글

백준_2188_축사 배정  (0) 2020.03.25
백준_2166_다각형의 면적(python)  (0) 2020.03.24
선분 교차 알고리즘  (0) 2020.02.29
백준_1057_토너먼트(시뮬레이션)  (0) 2020.02.28
백준_1021_회전하는 큐(시뮬레이션)  (0) 2020.02.26

댓글