結果
| 問題 |
No.55 正方形を描くだけの簡単なお仕事です。
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2019-03-15 15:11:17 |
| 言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
| 結果 |
AC
|
| 実行時間 | 12 ms / 5,000 ms |
| コード長 | 894 bytes |
| コンパイル時間 | 620 ms |
| コンパイル使用メモリ | 74,880 KB |
| 実行使用メモリ | 5,376 KB |
| 最終ジャッジ日時 | 2024-07-01 19:42:31 |
| 合計ジャッジ時間 | 1,849 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 4 |
| other | AC * 21 |
ソースコード
#include <algorithm>
#include <cmath>
#include <iostream>
#include <utility>
using namespace std;
int main() {
double X1, Y1, X2, Y2, X3, Y3, i, j;
cin >> X1 >> Y1 >> X2 >> Y2 >> X3 >> Y3;
pair<double, double> tmp1 = minmax({ hypot(X1 - X2, Y1 - Y2), hypot(X1 - X3, Y1 - Y3), hypot(X2 - X3, Y2 - Y3) });
for (i = -200.0; i <= 200.0; ++i) {
for (j = -200.0; j <= 200.0; ++j) {
int tmp2 = 0, tmp3 = 0;
if (hypot(X1 - i, Y1 - j) == tmp1.first) ++tmp2;
else if (hypot(X1 - i, Y1 - j) == tmp1.second) ++tmp3;
if (hypot(X2 - i, Y2 - j) == tmp1.first) ++tmp2;
else if (hypot(X2 - i, Y2 - j) == tmp1.second) ++tmp3;
if (hypot(X3 - i, Y3 - j) == tmp1.first) ++tmp2;
else if (hypot(X3 - i, Y3 - j) == tmp1.second) ++tmp3;
if (tmp2 == 2 && tmp3 == 1) break;
}
if (j != 201.0) break;
}
if (i != 201.0) cout << i << ' ' << j;
else cout << -1;
}