結果
| 問題 |
No.13 囲みたい!
|
| コンテスト | |
| ユーザー |
mint6421
|
| 提出日時 | 2019-07-02 00:04:47 |
| 言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
| 結果 |
AC
|
| 実行時間 | 4 ms / 5,000 ms |
| コード長 | 1,356 bytes |
| コンパイル時間 | 1,669 ms |
| コンパイル使用メモリ | 158,080 KB |
| 実行使用メモリ | 6,948 KB |
| 最終ジャッジ日時 | 2024-07-18 09:36:55 |
| 合計ジャッジ時間 | 2,222 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 16 |
コンパイルメッセージ
main.cpp:56:1: warning: ISO C++ forbids declaration of ‘main’ with no type [-Wreturn-type]
56 | main(){
| ^~~~
ソースコード
#include<bits/stdc++.h>
using namespace std;
#define inf 1000000000
#define INF 1000000000000000
#define ll long long
#define ull unsigned long long
#define M (int)(1e9+7)
#define P pair<int,int>
#define PLL pair<ll,ll>
#define FOR(i,m,n) for(int i=(int)m;i<(int)n;i++)
#define RFOR(i,m,n) for(int i=(int)m;i>=(int)n;i--)
#define rep(i,n) FOR(i,0,n)
#define rrep(i,n) RFOR(i,n,0)
#define all(a) a.begin(),a.end()
#define IN(a,n) rep(i,n){ cin>>a[i]; }
const int vx[4] = {0,1,0,-1};
const int vy[4] = {1,0,-1,0};
#define PI 3.14159265
#define F first
#define S second
#define PB push_back
#define EB emplace_back
#define int ll
void init(){
cin.tie(0);
ios::sync_with_stdio(false);
}
int w,h;
int a[110][110];
bool b[110][110];
bool dfs(int i,int j,int pi,int pj){
b[i][j]=true;
//cout<<i<<' '<<j<<' '<<pi<<' '<<pj<<endl;
bool flag=false;
rep(k,4){
int y=i+vy[k],x=j+vx[k];
if(y==pi&&x==pj) continue;
if(!(0<=x&&x<w&&0<=y&&y<h)) continue;
if(a[i][j]==a[y][x]){
if(b[y][x]){
return true;
}
flag|=dfs(y,x,i,j);
}
}
return flag;
}
main(){
cin>>w>>h;
rep(i,h){
rep(j,w){
cin>>a[i][j];
}
}
rep(i,h){
rep(j,w){
if(b[i][j]) continue;
if(dfs(i,j,-1,-1)){
cout<<"possible"<<endl;
return 0;
}
}
}
cout<<"impossible"<<endl;
}
mint6421