結果

問題 No.55 正方形を描くだけの簡単なお仕事です。
ユーザー momoyuu
提出日時 2024-07-29 21:11:06
言語 C++23
(gcc 13.3.0 + boost 1.87.0)
結果
WA  
実行時間 -
コード長 1,038 bytes
コンパイル時間 1,148 ms
コンパイル使用メモリ 109,032 KB
実行使用メモリ 6,944 KB
最終ジャッジ日時 2024-07-29 21:11:09
合計ジャッジ時間 2,567 ms
ジャッジサーバーID
(参考情報)
judge3 / judge5
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2 WA * 2
other AC * 13 WA * 8
権限があれば一括ダウンロードができます
コンパイルメッセージ
main.cpp: In function 'int main()':
main.cpp:37:5: warning: 'dy' may be used uninitialized [-Wmaybe-uninitialized]
   37 |     if(dx!=dy) fn = false;
      |     ^~
main.cpp:34:12: note: 'dy' was declared here
   34 |     int dx,dy;
      |            ^~
main.cpp:37:5: warning: 'dx' may be used uninitialized [-Wmaybe-uninitialized]
   37 |     if(dx!=dy) fn = false;
      |     ^~
main.cpp:34:9: note: 'dx' was declared here
   34 |     int dx,dy;
      |         ^~

ソースコード

diff #

#include<iostream>
#include<vector>
#include<algorithm>

using namespace std;
using ll = long long;

#include<set>
int main(){
    cin.tie(nullptr);
    ios::sync_with_stdio(false);

    int n = 3;
    vector<int> x(n),y(n);
    for(int i = 0;i<n;i++) cin>>x[i]>>y[i];
    bool fn = true;
    int nx,ny;
    if(x[0]==x[1]) nx = x[2];
    else if(x[1]==x[2]) nx = x[0];
    else if(x[0]==x[2]) nx = x[1];
    else fn = false;
    if(y[0]==y[1]) ny = y[2];
    else if(y[1]==y[2]) ny = y[0];
    else if(y[0]==y[2]) ny = y[1];
    else fn = false;
    set<int> sx,sy;
    for(int i = 0;i<n;i++) sx.insert(x[i]);
    for(int i = 0;i<n;i++) sy.insert(y[i]);
    sx.insert(nx);
    sy.insert(ny);
    if(sx.size()!=2) fn = false;
    if(sy.size()!=2) fn = false;

    int dx,dy;
    for(int i = 0;i<n;i++) for(int j = 0;j<n;j++) if(x[i]!=x[j]) dx = abs(x[i]-x[j]);
    for(int i = 0;i<n;i++) for(int j = 0;j<n;j++) if(y[i]!=y[j]) dy = abs(y[i]-y[j]);
    if(dx!=dy) fn = false;
    if(fn) cout<<nx<<" "<<ny<<endl;
    else cout<<-1<<endl;

}

0