BOJ 11758(CCW)
CCW ์ฑ๊ณต
1 ์ด 256 MB 11001 6812 5569 63.689% ๋ฌธ์
2์ฐจ์ ์ขํ ํ๋ฉด ์์ ์๋ ์ 3๊ฐ P1, P2, P3๊ฐ ์ฃผ์ด์ง๋ค. P1, P2, P3๋ฅผ ์์๋๋ก ์ด์ ์ ๋ถ์ด ์ด๋ค ๋ฐฉํฅ์ ์ด๋ฃจ๊ณ ์๋์ง ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
์ ๋ ฅ
์ฒซ์งธ ์ค์ P1์ (x1, y1), ๋์งธ ์ค์ P2์ (x2, y2), ์ ์งธ ์ค์ P3์ (x3, y3)๊ฐ ์ฃผ์ด์ง๋ค. (-10,000 โค x1, y1, x2, y2, x3, y3 โค 10,000) ๋ชจ๋ ์ขํ๋ ์ ์์ด๋ค. P1, P2, P3์ ์ขํ๋ ์๋ก ๋ค๋ฅด๋ค.
์ถ๋ ฅ
P1, P2, P3๋ฅผ ์์๋๋ก ์ด์ ์ ๋ถ์ด ๋ฐ์๊ณ ๋ฐฉํฅ์ ๋ํ๋ด๋ฉด 1, ์๊ณ ๋ฐฉํฅ์ด๋ฉด -1, ์ผ์ง์ ์ด๋ฉด 0์ ์ถ๋ ฅํ๋ค.
์์ ์ ๋ ฅ 1 ๋ณต์ฌ
1 1 5 5 7 3
์์ ์ถ๋ ฅ 1 ๋ณต์ฌ
-1
์์ ์ ๋ ฅ 2 ๋ณต์ฌ
1 1 3 3 5 5
์์ ์ถ๋ ฅ 2 ๋ณต์ฌ
0
์์ ์ ๋ ฅ 3 ๋ณต์ฌ
1 1 7 3 5 5
์์ ์ถ๋ ฅ 3 ๋ณต์ฌ
1โ
๊ธฐํ๋ฅผ ์ ์์ง ๋ชปํด์ ์๊ณ๋ฐฉํฅ, ๋ฐ์๊ณ๋ฐฉํฅ์ ์ ๋ถ์ ๋ํด ์ฐพ์๋ณด์๋ค.
https://coloredrabbit.tistory.com/162
๊ธฐํ[1] -2์ฐจ์ ์ธ ์ ์ ๊ด๊ณ - ํํ ๋ฐ ์๊ณ, ๋ฐ์๊ณ ๋ฐฉํฅ
2์ฐจ์์์ ์ธ ์ ์ด ์ฃผ์ด์ก์ ๋ ์ด ์ธ ์ ์ ์ด์์ ๋ ์ด๋ฃจ๋ ๋ ์ ๋ถ์ ์ฐ๊ฒฐ ๊ด๊ณ๋ฅผ ํํ ๊ทธ๋ฆฌ๊ณ ์๊ณ, ๋ฐ์๊ณ ๋ฐฉํฅ์ผ๋ก ๊ตฌ๋ถํ ์ ์๋ค. ๋จ, ๋ ์ ๋ถ์ด ์กด์ฌํ๊ธฐ ์ํด์๋ ์ ์ด ์๋ ์ ์ผ๋ก ์
coloredrabbit.tistory.com
์ด๊ฒ ์ ๋ถ๋ค.
#include <functional>
#include <iostream>
#include <vector>
#include <algorithm>
#define INF 987654321;
using namespace std;
int x1,y1,x2,y2,x3,y3,comp;
int main(){
ios::sync_with_stdio(0); cin.tie(0); cout.tie(0);
cin>>x1>>y1>>x2>>y2>>x3>>y3;
comp = (y2-y1)*(x3-x2)-(y3-y2)*(x2-x1);
if(comp==0)
cout<<0;
if(comp > 0)
cout<<-1;
if(comp < 0)
cout<<1;
}