#37921: C++外積解


010521@mail.pcsh.ntpc.edu.tw (Terry)

學校 : 新北市立板橋高級中學
編號 : 173875
來源 : [101.137.143.164]
最後登入時間 :
2024-04-08 01:18:52
k731. 1. 路徑偵測 -- 2023年6月APCS | From: [203.64.161.220] | 發表日期 : 2023-10-18 13:14

好用的想法

開一個點的結構陣列,再把點處理成向量
class Point{
    public:
        int x, y;
}p[105];

x1 = p[i+1].x - p[i].x;
y1 = p[i+1].y - p[i].y;


算出兩向量的外積x1 * y2 - x2 * y1
>0左轉
<0右轉
=0 && (dx < 0 || dy < 0)迴轉

 
#37922: Re: C++外積解


010521@mail.pcsh.ntpc.edu.tw (Terry)

學校 : 新北市立板橋高級中學
編號 : 173875
來源 : [101.137.143.164]
最後登入時間 :
2024-04-08 01:18:52
k731. 1. 路徑偵測 -- 2023年6月APCS | From: [101.136.116.187] | 發表日期 : 2023-10-18 13:48

好用的想法

開一個點的結構陣列,再把點處理成向量
class Point{
    public:
        int x, y;
}p[105];

x1 = p[i+1].x - p[i].x;
y1 = p[i+1].y - p[i].y;


算出兩向量的外積x1 * y2 - x2 * y1
>0左轉
<0右轉
=0 && (dx < 0 || dy < 0)迴轉

dx那裏寫的不太清楚,應該是 外積=0 && (x1*x2 < 0 || y1*y2 < 0) 代表迴轉

 
ZeroJudge Forum