You will be fine

<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) ? : (S < 0) ? -0;
        System.out.println(result);
    }
}
cs


반응형

블로그의 정보

57개월 BackEnd

BFine

활동하기