Submission #1245717


Source Code Expand

#include <bits/stdc++.h>
using namespace std;

#define pb         push_back

typedef long long ll;
const ll INF = 1000000000000000000ll;
const ll MOD = 1000000007ll;
const double EPS = 1e-8;

int h, w;
vector<string> ma;
vector<string> ans;
vector<string> chk;

bool check(int y, int x){
	bool f = true;
	for(int i=-1; i<=1; i++){
		for(int j=-1; j<=1; j++){
			int ny = y + i;
			int nx = x + j;
			if(ny >= 0 && ny < h && nx >=0 && nx < w){
				if(ma[ny][nx] != '#'){
					f = false;
				}
			}
		}
	}

	if(f){
		for(int i=-1; i<=1; i++){
			for(int j=-1; j<=1; j++){
				int ny = y + i;
				int nx = x + j;
				if(ny >= 0 && ny < h && nx >=0 && nx < w){
					chk[ny][nx] = 'x';
				}
			}
		}
	}

	return f;
}

int main(void) {
	//ios_base::sync_with_stdio(false);
	//cin.tie(0);
	
	cin >> h >> w;

	for(int i=0; i<h; i++){
		string t;
		cin >> t;
		ma.pb(t);
	}
	chk = ma;
	for(int i=0; i<h; i++){
		ans.pb("");
		for(int j=0; j<w; j++){
			ans[i] += '.';
		}
	}

	for(int i=0; i<h; i++){
		for(int j=0; j<w; j++){
			if(ma[i][j] == '#'){
				if(check(i, j)){
					ans[i][j] = '#';
				}
			}
		}
	}

	bool f = true;
	for(int i=0; i<h; i++){
		for(int j=0; j<w; j++){
			if(chk[i][j] == '#'){
				f = false;
			}
		}
	}

	if(f){
		puts("possible");
		for(int i=0; i<h; i++){
			cout << ans[i] << endl;
		}
	}else{
		puts("impossible");
	}

	return 0;
}

Submission Info

Submission Time
Task D - 画像処理高橋君
User tanutarou
Language C++14 (GCC 5.4.1)
Score 100
Code Size 1450 Byte
Status AC
Exec Time 8 ms
Memory 764 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 100 / 100
Status
AC × 3
AC × 25
Set Name Test Cases
Sample example_0.txt, example_1.txt, example_2.txt
All example_0.txt, example_1.txt, example_2.txt, handmade_0.txt, handmade_1.txt, possible_0.txt, possible_1.txt, possible_2.txt, possible_3.txt, possible_4.txt, possible_5.txt, possible_6.txt, possible_7.txt, possible_8.txt, possible_9.txt, random_0.txt, random_1.txt, random_2.txt, random_3.txt, random_4.txt, random_5.txt, random_6.txt, random_7.txt, random_8.txt, random_9.txt
Case Name Status Exec Time Memory
example_0.txt AC 8 ms 764 KB
example_1.txt AC 1 ms 256 KB
example_2.txt AC 1 ms 256 KB
handmade_0.txt AC 1 ms 256 KB
handmade_1.txt AC 1 ms 256 KB
possible_0.txt AC 1 ms 256 KB
possible_1.txt AC 2 ms 256 KB
possible_2.txt AC 2 ms 256 KB
possible_3.txt AC 2 ms 256 KB
possible_4.txt AC 1 ms 256 KB
possible_5.txt AC 1 ms 256 KB
possible_6.txt AC 2 ms 256 KB
possible_7.txt AC 2 ms 256 KB
possible_8.txt AC 2 ms 256 KB
possible_9.txt AC 2 ms 256 KB
random_0.txt AC 1 ms 256 KB
random_1.txt AC 2 ms 256 KB
random_2.txt AC 1 ms 256 KB
random_3.txt AC 1 ms 256 KB
random_4.txt AC 1 ms 256 KB
random_5.txt AC 1 ms 256 KB
random_6.txt AC 2 ms 256 KB
random_7.txt AC 2 ms 256 KB
random_8.txt AC 1 ms 256 KB
random_9.txt AC 1 ms 256 KB