結果
問題 | No.55 正方形を描くだけの簡単なお仕事です。 |
ユーザー |
|
提出日時 | 2024-01-27 10:40:22 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 43 ms / 5,000 ms |
コード長 | 1,787 bytes |
コンパイル時間 | 273 ms |
コンパイル使用メモリ | 82,640 KB |
実行使用メモリ | 52,608 KB |
最終ジャッジ日時 | 2024-09-28 09:35:54 |
合計ジャッジ時間 | 2,267 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 21 |
ソースコード
X1,Y1,X2,Y2,X3,Y3 = map(int, input().split())leftend_x = min(X1, X2, X3)if X1 == X2 == X3 or Y1 == Y2 == Y3:print(-1)elif X1 == X2:if abs(Y1 - Y2) == abs(X1 - X3) and Y1 == Y3:print(X3, Y2)elif abs(Y1 - Y2) == abs(X1 - X3) and Y2 == Y3:print(X3, Y1)elif (Y1 + Y2) / 2 == Y3:print(2 * X1 - X3, Y3)else:print(-1)elif X2 == X3:if abs(Y2 - Y3) == abs(X2 - X1) and Y2 == Y1:print(X1, Y3)elif abs(Y2 - Y3) == abs(X2 - X1) and Y3 == Y1:print(X1, Y2)elif (Y2 + Y3) / 2 == Y1:print(2 * X2 - X1, Y1)else:print(-1)elif X3 == X1:if abs(Y3 - Y1) == abs(X2 - X1) and Y3 == Y2:print(X2, Y1)elif abs(Y3 - Y1) == abs(X2 - X1) and Y1 == Y2:print(X2, Y3)elif (Y1 + Y3) / 2 == Y2:print(2 * X1 - X2 ,Y2)else:print(-1)elif leftend_x == X1 and (Y2 - Y1) / (X2 - X1) == (Y3 - Y1) / (X3 - X1):print(-1)elif leftend_x == X2 and (Y1 - Y2) / (X1 - X2) == (Y3 - Y2) / (X3 - X2):print(-1)elif leftend_x == X3 and (Y1 - Y3) / (X1 - X3) == (Y1 - Y3) / (X2 - X3):print(-1)else:X4 = X2 + X3 - X1Y4 = Y2 + Y3 - Y1XD4 = abs(max(X1, X2, X3, X4) - min(X1, X2, X3, X4))YD4 = abs(max(Y1, Y2, Y3, Y4) - min(Y1, Y2, Y3, Y4))X5 = X1 + X3 - X2Y5 = Y1 + Y3 - Y2XD5 = abs(max(X1, X2, X3, X5) - min(X1, X2, X3, X5))YD5 = abs(max(Y1, Y2, Y3, Y5) - min(Y1, Y2, Y3, Y5))X6 = X1 + X2 - X3Y6 = Y1 + Y2 - Y3XD6 = abs(max(X1, X2, X3, X6) - min(X1, X2, X3, X6))YD6 = abs(max(Y1, Y2, Y3, Y6) - min(Y1, Y2, Y3, Y6))if XD4 == YD4:print(X4, Y4)elif XD5 == YD5:print(X5, Y5)elif XD6 == YD6:print(X6, Y6)else:print(-1)