結果
| 問題 |
No.55 正方形を描くだけの簡単なお仕事です。
|
| コンテスト | |
| ユーザー |
woodsgreen
|
| 提出日時 | 2022-01-11 18:20:11 |
| 言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
| 結果 |
AC
|
| 実行時間 | 2 ms / 5,000 ms |
| コード長 | 972 bytes |
| コンパイル時間 | 2,052 ms |
| コンパイル使用メモリ | 194,096 KB |
| 最終ジャッジ日時 | 2025-01-27 10:26:48 |
|
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 4 |
| other | AC * 21 |
ソースコード
//
#include <bits/stdc++.h>
using namespace std;
int p[3][2],a[6][3]={{0,1,2},{0,2,1},{1,0,2},{1,2,0},{2,0,1},{2,1,0}};
double dis(int x,int y,int p,int q){
return sqrt((x-p)*(x-p)+(y-q)*(y-q));
}
int main(){
// freopen("aa.in","r",stdin);
// freopen("aa.out","w",stdout);
for(int i=0;i<3;++i) cin>>p[i][0]>>p[i][1];
for(int i=0;i<6;++i){
// d1: p0~p1, d2: p1~p2, d3: p0~p2
double d1=dis(p[a[i][0]][0],p[a[i][0]][1],p[a[i][1]][0],p[a[i][1]][1]);
double d2=dis(p[a[i][1]][0],p[a[i][1]][1],p[a[i][2]][0],p[a[i][2]][1]);
double d3=dis(p[a[i][0]][0],p[a[i][0]][1],p[a[i][2]][0],p[a[i][2]][1]);
// p1ΪֱǶ
if(fabs(d1-d2)<1e-6&&fabs(d1*d1+d2*d2-d3*d3)<1e-6){
int x=p[a[i][0]][0]+p[a[i][2]][0]-p[a[i][1]][0];
int y=p[a[i][0]][1]+p[a[i][2]][1]-p[a[i][1]][1];
cout<<x<<" "<<y;
return 0;
}
}
cout<<-1;
return 0;
}
woodsgreen