<Algorithm> 40. 11758번 CCW
by BFine반응형
1. 11758번 CCW
외적을 이용하여 벡터 간의 방향성을 알려주는 알고리즘 이다.
x1y2 + y1x3 + x2y3 - (x3y2 + x1y3 + y1x3) 이값이 0보다 크면 1(반시계 방향) 작으면 -1(시계 방향) 같으면 0(일직선) 나타낸다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { public static void main(String[] args) throws NumberFormatException, IOException { BufferedReader br =new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st; int[] x = new int[3]; int[] y = new int[3]; for(int i = 0; i < 3; i ++) { st = new StringTokenizer(br.readLine()); x[i] = Integer.parseInt(st.nextToken()); y[i] = Integer.parseInt(st.nextToken()); } int S = (x[1]-x[0])*(y[2]-y[0]) - (y[1]-y[0])*(x[2]-x[0]); int result = (S > 0) ? 1 : (S < 0) ? -1 : 0; System.out.println(result); } } | cs |
반응형
'공부(2018~2019) - 스킨변경전 > Algorithm' 카테고리의 다른 글
<Algorithm> 42. 2589번 보물섬 (0) | 2018.08.09 |
---|---|
<Algorithm> 41. 2468번 안전영역 (0) | 2018.08.09 |
<Algorithm> 39. 1931번 회의실 (0) | 2018.08.08 |
<Algorithm> 38. 11399번 ATM (0) | 2018.08.08 |
<Algorithm> 37. 1026번 보물 (0) | 2018.08.08 |
블로그의 정보
57개월 BackEnd
BFine