Submission #3719210


Source Code Expand

#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <algorithm>
#include <string>
#include <sstream>
#include <complex>
#include <vector>
#include <list>
#include <queue>
#include <deque>
#include <stack>
#include <map>
#include <set>
#include <iomanip>
using namespace std;
typedef long long unsigned int ll;
template<typename T> using min_priority_queue = priority_queue<T, vector<T>, greater<T>>;

#define EPS (1e-7)
#define INF (1e9)
#define PI (acos(-1))
#define MOD 1000000007

#define REP(i,n) for(int i=0;i<n;i++)
#define REPS(i,f,n) for(int i=(f);i<(n);i++)
#define EACH(it,v) for(__typeof((v).begin()) it=(v).begin();it!=(v).end();it++)

#define dump(x)  cout << #x << " = " << (x) << endl;
#define debug(x) cout << #x << " = " << (x) << " (L" << __LINE__ << ")" << " " << __FILE__ << endl;

typedef pair<int, int> P;
typedef pair<ll, ll> LP;
typedef pair<int, P> PP;
typedef pair<ll, LP> LPP;

int dy4[]={0, 0, 1, -1};
int dx4[]={1, -1, 0, 0};
int dx8[]={0, 0, 1, -1, 1, 1, -1, -1};
int dy8[]={1, -1, 0, 0, 1, -1, -1, 1};

// https://beta.atcoder.jp/contests/arc031/tasks/arc031_2

int N = 10;
string s2[10];

void dfs(int y, int x) {
    s2[y][x] = 'x';

    REP(k, 4) {
        int nx = x + dx4[k];
        int ny = y + dy4[k];
        if (nx >= 0 && nx < N && ny >= 0 && ny < N) {
            if (s2[ny][nx] == 'o') {
                dfs(ny, nx);
            }
        }
    }

    return;
}

int main() {
    string s[N];
    REP(i, N) {
        cin >> s[i];
    }

    REP(i, N) {
        REP(j, N) {
            REP(k, N) s2[k] = s[k];

            s2[i][j] = 'o';

            dfs(i, j);

            bool can = true;
            REP(k, N) {
                REP(l, N) {
                    if (s2[k][l] == 'o') can = false;
                }
            }

            if (can) {
                cout << "YES" << "\n";
                return 0;
            }
        }

    }

    cout << "NO" << "\n";
    return 0;
}

Submission Info

Submission Time
Task B - 埋め立て
User wakamenod
Language C++14 (GCC 5.4.1)
Score 100
Code Size 2065 Byte
Status AC
Exec Time 1 ms
Memory 256 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 100 / 100
Status
AC × 3
AC × 33
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 1 ms 256 KB
00_sample_01.txt AC 1 ms 256 KB
00_sample_02.txt AC 1 ms 256 KB
10_rand_00.txt AC 1 ms 256 KB
10_rand_01.txt AC 1 ms 256 KB
10_rand_02.txt AC 1 ms 256 KB
10_rand_03.txt AC 1 ms 256 KB
10_rand_04.txt AC 1 ms 256 KB
10_rand_05.txt AC 1 ms 256 KB
10_rand_06.txt AC 1 ms 256 KB
10_rand_07.txt AC 1 ms 256 KB
10_rand_08.txt AC 1 ms 256 KB
10_rand_09.txt AC 1 ms 256 KB
10_rand_10.txt AC 1 ms 256 KB
10_rand_11.txt AC 1 ms 256 KB
10_rand_12.txt AC 1 ms 256 KB
10_rand_13.txt AC 1 ms 256 KB
10_rand_14.txt AC 1 ms 256 KB
10_rand_15.txt AC 1 ms 256 KB
10_rand_16.txt AC 1 ms 256 KB
10_rand_17.txt AC 1 ms 256 KB
10_rand_18.txt AC 1 ms 256 KB
10_rand_19.txt AC 1 ms 256 KB
10_rand_20.txt AC 1 ms 256 KB
10_rand_21.txt AC 1 ms 256 KB
10_rand_22.txt AC 1 ms 256 KB
10_rand_23.txt AC 1 ms 256 KB
10_rand_24.txt AC 1 ms 256 KB
10_rand_25.txt AC 1 ms 256 KB
10_rand_26.txt AC 1 ms 256 KB
10_rand_27.txt AC 1 ms 256 KB
10_rand_28.txt AC 1 ms 256 KB
10_rand_29.txt AC 1 ms 256 KB