結果
問題 | No.55 正方形を描くだけの簡単なお仕事です。 |
ユーザー |
|
提出日時 | 2017-05-02 13:12:31 |
言語 | C++11 (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 2 ms / 5,000 ms |
コード長 | 2,127 bytes |
コンパイル時間 | 475 ms |
コンパイル使用メモリ | 60,072 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-09-14 04:41:08 |
合計ジャッジ時間 | 1,459 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 21 |
ソースコード
#include <iostream>#include <string>#include <cmath>class VECTOR_INT_2D{public:int x, y;VECTOR_INT_2D operator+(VECTOR_INT_2D vector){VECTOR_INT_2D result;result.x = x + vector.x;result.y = y + vector.y;return result;}VECTOR_INT_2D operator-(VECTOR_INT_2D vector){VECTOR_INT_2D result;result.x = x - vector.x;result.y = y - vector.y;return result;}void showVector(void){std::cout << x << " " << y << std::endl;return;}int absx(void){if(x >= 0){return x;}else{return -1 * x;}}int absy(void){if(y >= 0){return y;}else{return -1 * y;}}};double inner(VECTOR_INT_2D vec1, VECTOR_INT_2D vec2){double inner;inner = vec1.x * vec2.x + vec1.y * vec2.y;return inner;}bool equal(VECTOR_INT_2D vec1, VECTOR_INT_2D vec2){if(vec1.x == vec2.x && vec1.y == vec2.y){return true;}else{return false;}}bool equalNorm(VECTOR_INT_2D vec1, VECTOR_INT_2D vec2){if(vec1.absx() == vec2.absy() && vec1.absy() == vec2.absx()){return true;}else{return false;}}int main(void){VECTOR_INT_2D point[4];VECTOR_INT_2D RelVec[3];for(int i = 0; i < 3; i ++){std::cin >> point[i].x >> point[i].y;}RelVec[0] = point[1] - point[0];RelVec[1] = point[2] - point[0];RelVec[2] = point[2] - point[1];if(inner(RelVec[0], RelVec[1]) == 0.0){if(equalNorm(RelVec[0], RelVec[1])){point[3] = point[0] + RelVec[0] + RelVec[1];point[3].showVector();}else{std::cout << "-1" << std::endl;}}else if(inner(RelVec[0], RelVec[2]) == 0.0){if(equalNorm(RelVec[0], RelVec[2])){point[3] = point[0] + RelVec[2];point[3].showVector();}else{std::cout << "-1" << std::endl;}}else if(inner(RelVec[1], RelVec[2]) == 0.0){if(equalNorm(RelVec[1], RelVec[2])){point[3] = point[2] - RelVec[1] - RelVec[2];point[3].showVector();}else{std::cout << "-1" << std::endl;}}else{std::cout << "-1" << std::endl;}return 0;}