#36361: 提示


vlva8166@gmail.com (風行)

學校 : 不指定學校
編號 : 160868
來源 : [111.185.184.49]
最後登入時間 :
2024-01-04 21:34:15
e512. 10242 - Fourth Point!! -- UVA | From: [111.185.245.34] | 發表日期 : 2023-07-15 03:09

對角線的點相加 除以2 就是中點

平行四邊形有兩條對角線

只要先判斷重疊的是兩哪個點,在用中點公式換算

 

// accepted
# include <iostream>
# include <iomanip>
using namespace std;
int main()
{
    double a[2],b[2],c[2],d[2];
    while (cin >> a[0] >> a[1] >> b[0] >> b[1] >> c[0] >> c[1] >> d[0] >> d[1])
    {
        if (a[0] == c[0] && a[1] == c[1])
        {
            cout << fixed << setprecision(3)
                 << b[0] + d[0] - a[0] << " " << b[1] + d[1] - a[1] << endl;
        }
        else if (a[0] == d[0] && a[1] == d[1])
        {
            cout << fixed << setprecision(3)
                 << b[0] + c[0] - a[0] << " " << b[1] + c[1] - a[1] << endl;
        }
        else if (b[0] == c[0] && b[1] == c[1])
        {
            cout << fixed << setprecision(3)
                 << a[0] + d[0] - b[0] << " " << a[1] + d[1] - b[1] << endl;
        }
        else if (b[0] == d[0] && b[1] == d[1])
        {
            cout <<fixed << setprecision(3)
                 << a[0] + c[0] - b[0] << " " << a[1] + c[1] - b[1] << endl;
        }
    }
   
    return 0;
}
 
ZeroJudge Forum