結果

問題 No.55 正方形を描くだけの簡単なお仕事です。
コンテスト
ユーザー itezpace
提出日時 2016-08-07 08:36:13
言語 C++11(old_compat)
(gcc 12.4.0 + boost 1.89.0)
コンパイル:
g++-12 -O2 -lm -std=gnu++11 -Wuninitialized -DONLINE_JUDGE -include bits/stdc++.h -o a.out _filename_
実行:
./a.out
結果
AC  
実行時間 2 ms / 5,000 ms
コード長 1,497 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 1,431 ms
コンパイル使用メモリ 168,784 KB
実行使用メモリ 7,844 KB
最終ジャッジ日時 2026-03-08 16:07:08
合計ジャッジ時間 2,274 ms
ジャッジサーバーID
(参考情報)
judge3 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 21
権限があれば一括ダウンロードができます
コンパイルメッセージ
main.cpp: In function ‘int main()’:
main.cpp:24:3: warning: ‘o’ may be used uninitialized [-Wmaybe-uninitialized]
   24 |   if(o==0){
      |   ^~
main.cpp:5:23: note: ‘o’ was declared here
    5 |   int a,b,c,d,e,f,g,h,o;
      |                       ^
main.cpp:63:24: warning: ‘n2’ may be used uninitialized [-Wmaybe-uninitialized]
   63 |           if(m==m2 && n==n2){
      |                       ~^~~~
main.cpp:23:13: note: ‘n2’ was declared here
   23 |   double m2,n2,x2,y2,z2;
      |             ^~
main.cpp:63:15: warning: ‘m2’ may be used uninitialized [-Wmaybe-uninitialized]
   63 |           if(m==m2 && n==n2){
      |              ~^~~~
main.cpp:23:10: note: ‘m2’ was declared here
   23 |   double m2,n2,x2,y2,z2;
      |          ^~
main.cpp:39:15: warning: ‘m’ may be used uninitialized [-Wmaybe-uninitialized]
   39 |           if(m==x2 && x2==y2){
      |              ~^~~~
main.cpp:6:10: note: ‘m’ was declared here
    6 |   double m,n,x,y,z;
      |          ^
main.cpp:63:24: warning: ‘n’ may be used uninitialized [-Wmaybe-uninitialized]
   63 |           if(m==m2 && n==n2){
      |                       ~^~~~
main.cpp:6:12: note: ‘n’ was declared here
    6 |   double m,n,x,y,z;
      |            ^

ソースコード

diff #
raw source code

#include <iostream>
#include <algorithm>
using namespace std;
int main(){
  int a,b,c,d,e,f,g,h,o;
  double m,n,x,y,z;
  cin>>a>>b>>c>>d>>e>>f;
  x=sqrt(pow(abs(a-c),2)+pow(abs(b-d),2));
  y=sqrt(pow(abs(a-e),2)+pow(abs(b-f),2));
  if(x==y){
    m=x;
    n=-1;
    o=0;
  } else if(x>y){
    m=y;
    n=x;
    o=1;
  } else if(x<y){
    m=x;
    n=y;
    o=1;
  }
  double m2,n2,x2,y2,z2;
  if(o==0){
    int z3,z4;
    z2=m*sqrt(2);
    z4=z2*1e6;
    z2=z4;
    z2/=1e6;
    for(g=-200; g<=200; ++g){
      for(h=-200; h<=200; ++h){
        z=sqrt(pow(abs(a-g),2)+pow(abs(b-h),2));
        z3=z*1e6;
        z=z3;
        z/=1e6;
        if(z==z2){
          x2=sqrt(pow(abs(c-g),2)+pow(abs(d-h),2));
          y2=sqrt(pow(abs(e-g),2)+pow(abs(f-h),2));
          if(m==x2 && x2==y2){
            cout<<g<<" "<<h<<endl;
            return 0;
          }
        }
      }
    }
    cout<<-1<<endl;
  } else if(o==1){
    for(g=-200; g<=200; ++g){
      for(h=-200; h<=200; ++h){
        z=sqrt(pow(abs(a-g),2)+pow(abs(b-h),2));
        if(z==m){
          x2=sqrt(pow(abs(c-g),2)+pow(abs(d-h),2));
          y2=sqrt(pow(abs(e-g),2)+pow(abs(f-h),2));
          if(x2==y2){
            break;
          } else if(x2>y2){
            m2=y2;
            n2=x2;
          } else if(x2<y2){
            m2=x2;
            n2=y2;
          }
          if(m==m2 && n==n2){
            cout<<g<<" "<<h<<endl;
            return 0;
          }
        }
      }
    }
    cout<<-1<<endl;
  }
  return 0;
}
0