結果
問題 | No.179 塗り分け |
ユーザー |
![]() |
提出日時 | 2020-10-23 16:11:21 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 24 ms / 3,000 ms |
コード長 | 941 bytes |
コンパイル時間 | 1,698 ms |
コンパイル使用メモリ | 171,092 KB |
実行使用メモリ | 6,944 KB |
最終ジャッジ日時 | 2024-07-23 15:21:41 |
合計ジャッジ時間 | 3,122 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 6 |
other | AC * 40 |
ソースコード
#include <bits/stdc++.h> using namespace std; using ll=long long; int main(){ int H,W; cin>>H>>W; vector<string> S(H); for(int i=0;i<H;i++){ cin>>S[i]; } bool flag=false; for(int di=0;di<H;di++){ for(int dj=-W+1;dj<W;dj++){ int cnt=0; bool sub=true; vector<string> T=S; for(int i=0;i<H;i++){ for(int j=0;j<W;j++){ if(T[i][j]=='#'){ cnt=1; T[i][j]='.'; if(i+di>=H||j+dj>=W){ sub=false; break; } if(T[i+di][j+dj]=='#'){ T[i+di][j+dj]='.'; }else{ sub=false; break; } } } if(!sub){ break; } } if(sub&&cnt==1){ flag=true; break; } } if(flag){ break; } } if(flag){ cout<<"YES"<<endl; }else{ cout<<"NO"<<endl; } }