[叉积判断三点方向] hdu 6857 Clockwise or Counterclockwise

题目

[叉积判断三点方向] hdu 6857 Clockwise or Counterclockwise_第1张图片
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6857

思路

A(x1,y1) B(x2,y2) C(x3,y3)
向量AB=(x2-x1,y2-y1)
向量AC=(x3-x1,y3-y1)
若 AB x AC < 0 则 ABC 顺时针
若 AB x AC > 0 则 ABC 逆时针
若 AB x AC = 0 则 AB、AC 共线 同向或者反向

代码

#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#if __cplusplus >= 201103L
#include 
#include 
#endif
#define int long long
using namespace std;
const int INF = 0x3f3f3f3f;

signed main(){
	ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
	int t;
	cin>>t;
	while(t--){
		int x1,x2,x3,y1,y2,y3;
		cin>>x1>>y1>>x2>>y2>>x3>>y3;
		int ans=(x2-x1)*(y3-y1)-(x3-x1)*(y2-y1);
		if(ans<0) cout<<"Clockwise"<<endl;
		else cout<<"Counterclockwise"<<endl;
	}
    return 0;
}

你可能感兴趣的:([叉积判断三点方向] hdu 6857 Clockwise or Counterclockwise)