Submission #298319
Source Code Expand
#include <iostream>
#include <sstream>
#include <fstream>
#include <string>
#include <vector>
#include <deque>
#include <queue>
#include <stack>
#include <set>
#include <map>
#include <algorithm>
#include <utility>
#include <bitset>
#include <cmath>
#include <cstdlib>
#include <ctime>
#include <cstring>
#include <cstdio>
using namespace std;
#define REP(i,n) for((i)=0;(i)<(int)(n);(i)++)
#define foreach(c,itr) for(__typeof((c).begin()) itr=(c).begin();itr!=(c).end();itr++)
string mp[12];
typedef pair<int,int> P;
const int di[4] = {-1,1,0,0};
const int dj[4] = {0,0,-1,1};
bool visited[12][12];
bool is_connected(int si, int sj) {
memset(visited, 0, sizeof visited);
queue<P> Q;
Q.push(P(si, sj));
while (!Q.empty()) {
P p = Q.front(); Q.pop();
int ci = p.first, cj = p.second;
if (visited[ci][cj]) continue;
//printf("%d,%d pop!\n", ci, cj);
visited[ci][cj] = true;
for(int i = 0; i < 4;i++) {
int ni = ci + di[i], nj = cj + dj[i];
if (ni < 0 || nj < 0 || 10 <= ni || 10 <= nj || mp[ni][nj] == 'x') continue;
if (visited[ni][nj]) continue;
Q.push(P(ni, nj));
}
}
// chck
for (int i = 0; i < 10; i++) {
for (int j = 0; j < 10; j++) {
if (mp[i][j] == 'o' && !visited[i][j]) {
//printf("%d-%d : false by %d,%d\n", si, sj, i, j);
return false;
}
}
}
return true;
}
int solve() {
int si = -1, sj = -1;
for (int i = 0; i < 10; i++) {
for (int j = 0; j < 10; j++) {
if (mp[i][j] == 'o') {
si = i, sj = j;
break;
}
}
if (si != -1) break;
}
for (int i = 0; i < 10; i++) {
for (int j = 0; j < 10; j++) {
if (mp[i][j] == 'x') {
mp[i][j] = 'o';
//printf("call by %d,%d\n", i, j);
//for (int k = 0; k < 10; k++) cout << mp[k] << endl;
if (is_connected(si, sj)) return 1;
mp[i][j] = 'x';
}
}
}
return 0;
}
int main() {
while (cin >> mp[0]) {
for (int i = 1; i < 10; i++) {
cin >> mp[i];
}
printf("%s\n", solve() ? "YES" : "NO");
}
return 0;
}
Submission Info
Submission Time |
|
Task |
B - 埋め立て |
User |
brly |
Language |
C++ (G++ 4.6.4) |
Score |
100 |
Code Size |
2208 Byte |
Status |
AC |
Exec Time |
25 ms |
Memory |
928 KB |
Judge Result
Set Name |
Sample |
All |
Score / Max Score |
0 / 0 |
100 / 100 |
Status |
|
|
Set Name |
Test Cases |
Sample |
00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt |
All |
00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 10_rand_00.txt, 10_rand_01.txt, 10_rand_02.txt, 10_rand_03.txt, 10_rand_04.txt, 10_rand_05.txt, 10_rand_06.txt, 10_rand_07.txt, 10_rand_08.txt, 10_rand_09.txt, 10_rand_10.txt, 10_rand_11.txt, 10_rand_12.txt, 10_rand_13.txt, 10_rand_14.txt, 10_rand_15.txt, 10_rand_16.txt, 10_rand_17.txt, 10_rand_18.txt, 10_rand_19.txt, 10_rand_20.txt, 10_rand_21.txt, 10_rand_22.txt, 10_rand_23.txt, 10_rand_24.txt, 10_rand_25.txt, 10_rand_26.txt, 10_rand_27.txt, 10_rand_28.txt, 10_rand_29.txt |
Case Name |
Status |
Exec Time |
Memory |
00_sample_00.txt |
AC |
23 ms |
796 KB |
00_sample_01.txt |
AC |
25 ms |
800 KB |
00_sample_02.txt |
AC |
21 ms |
804 KB |
10_rand_00.txt |
AC |
22 ms |
928 KB |
10_rand_01.txt |
AC |
23 ms |
924 KB |
10_rand_02.txt |
AC |
22 ms |
700 KB |
10_rand_03.txt |
AC |
22 ms |
808 KB |
10_rand_04.txt |
AC |
22 ms |
676 KB |
10_rand_05.txt |
AC |
22 ms |
796 KB |
10_rand_06.txt |
AC |
23 ms |
800 KB |
10_rand_07.txt |
AC |
22 ms |
796 KB |
10_rand_08.txt |
AC |
22 ms |
800 KB |
10_rand_09.txt |
AC |
21 ms |
676 KB |
10_rand_10.txt |
AC |
22 ms |
736 KB |
10_rand_11.txt |
AC |
23 ms |
736 KB |
10_rand_12.txt |
AC |
21 ms |
924 KB |
10_rand_13.txt |
AC |
25 ms |
796 KB |
10_rand_14.txt |
AC |
23 ms |
764 KB |
10_rand_15.txt |
AC |
22 ms |
920 KB |
10_rand_16.txt |
AC |
23 ms |
800 KB |
10_rand_17.txt |
AC |
22 ms |
920 KB |
10_rand_18.txt |
AC |
22 ms |
672 KB |
10_rand_19.txt |
AC |
21 ms |
800 KB |
10_rand_20.txt |
AC |
21 ms |
804 KB |
10_rand_21.txt |
AC |
23 ms |
684 KB |
10_rand_22.txt |
AC |
21 ms |
796 KB |
10_rand_23.txt |
AC |
23 ms |
800 KB |
10_rand_24.txt |
AC |
21 ms |
760 KB |
10_rand_25.txt |
AC |
23 ms |
736 KB |
10_rand_26.txt |
AC |
21 ms |
928 KB |
10_rand_27.txt |
AC |
22 ms |
800 KB |
10_rand_28.txt |
AC |
22 ms |
804 KB |
10_rand_29.txt |
AC |
25 ms |
924 KB |