結果
問題 | No.870 無敵囲い |
ユーザー | LayCurse |
提出日時 | 2019-08-30 21:47:01 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 3 ms / 300 ms |
コード長 | 1,695 bytes |
コンパイル時間 | 3,013 ms |
コンパイル使用メモリ | 208,768 KB |
最終ジャッジ日時 | 2025-01-07 15:50:41 |
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 18 |
ソースコード
#pragma GCC optimize ("Ofast") #include<bits/stdc++.h> using namespace std; inline void rd(int &x){ int k, m=0; x=0; for(;;){ k = getchar_unlocked(); if(k=='-'){ m=1; break; } if('0'<=k&&k<='9'){ x=k-'0'; break; } } for(;;){ k = getchar_unlocked(); if(k<'0'||k>'9'){ break; } x=x*10+k-'0'; } if(m){ x=-x; } } inline void wt_L(char a){ putchar_unlocked(a); } inline void wt_L(const char c[]){ int i=0; for(i=0;c[i]!='\0';i++){ putchar_unlocked(c[i]); } } int N; int X1[20]; int Y1[20]; int X2[20]; int Y2[20]; int ok(int a, int b, int c, int d){ int i; for(i=0;i<(N);i++){ if(a==X1[i] && b==Y1[i]){ a = X2[i]; b = Y2[i]; } } if(a==c && b==d){ return 1; } return 0; } int main(){ rd(N); { int Lj4PdHRW; for(Lj4PdHRW=0;Lj4PdHRW<(N);Lj4PdHRW++){ rd(X1[Lj4PdHRW]); rd(Y1[Lj4PdHRW]); rd(X2[Lj4PdHRW]); rd(Y2[Lj4PdHRW]); } } if(!ok(2,8,5,8)){ wt_L("NO"); wt_L('\n'); return 0; } if(!ok(3,9,4,8)){ wt_L("NO"); wt_L('\n'); return 0; } if(!ok(7,9,6,8)){ wt_L("NO"); wt_L('\n'); return 0; } wt_L("YES"); wt_L('\n'); return 0; } // cLay varsion 20190830-1 // --- original code --- // int N, X1[20], Y1[20], X2[20], Y2[20]; // // int ok(int a, int b, int c, int d){ // int i; // rep(i,N) if(a==X1[i] && b==Y1[i]) a = X2[i], b = Y2[i]; // if(a==c && b==d) return 1; // return 0; // } // // { // rd(N,(X1,Y1,X2,Y2)(N)); // if(!ok(2,8,5,8)) wt("NO"), return 0; // if(!ok(3,9,4,8)) wt("NO"), return 0; // if(!ok(7,9,6,8)) wt("NO"), return 0; // wt("YES"); // }