提出 #75534453


ソースコード 拡げる

#include <bits/stdc++.h>
#define fastio cin.tie(0)->sync_with_stdio(0)
#define all(x) (x).begin(),(x).end()
#define rall(x) (x).rbegin(),(x).rend()
#define compress(v) sort(all(v)), v.erase(unique(all(v)), v.end())
#define sz(x) (int)(x).size()
using namespace std;
typedef long long ll;

int main() {
    fastio; int T; cin >> T;
    for (int tc = 0; tc < T; tc++) {
        int N, M; cin >> N >> M;
        vector<vector<int>> adj(N);
        for (int i = 0; i < M; i++) {
            int u, v; cin >> u >> v; u--; v--;
            adj[u].push_back(v);
            adj[v].push_back(u);
        }
        vector<string> hv(N);
        int W; cin >> W;
        for (auto &i : hv) cin >> i;
        vector<vector<int>> vis(N, vector<int>(10));
        auto dfs = [&](auto dfs, int u, int d) -> bool {
            vis[u][d] = 1;
            int nd = (d+1)%W;
            for (auto v : adj[u]) {
                if (hv[v][nd] == 'x') continue;
                if (vis[v][nd] == 1) return true;
                if (vis[v][nd] == 0 && dfs(dfs, v, nd)) return true;
            }
            if (hv[u][nd] == 'o') {
                if (vis[u][nd] == 1) return true;
                if (vis[u][nd] == 0 && dfs(dfs, u, nd)) return true;
            }
            vis[u][d] = 2;
            return false;
        };
        bool chk = false;
        for (int i = 0; i < N; i++) {
            if (hv[i][0] == 'o' && vis[i][0] == 0) {
                if (dfs(dfs, i, 0)) {
                    chk = true; break;
                }
            }
        }
        cout << (chk ? "Yes" : "No") << "\n";
    }
    return 0;
}

提出情報

提出日時
問題 E - Endless Holidays
ユーザ Lov34ever
言語 C++23 (GCC 15.2.0)
得点 450
コード長 1659 Byte
結果 AC
実行時間 62 ms
メモリ 61068 KiB

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 450 / 450
結果
AC × 1
AC × 21
セット名 テストケース
Sample 00_sample_01.txt
All 00_sample_01.txt, 01_small_random_01.txt, 01_small_random_02.txt, 01_small_random_03.txt, 01_small_random_04.txt, 02_medium_random_01.txt, 02_medium_random_02.txt, 02_medium_random_03.txt, 02_medium_random_04.txt, 03_large_sparse_01.txt, 03_large_sparse_02.txt, 03_large_sparse_03.txt, 03_large_sparse_04.txt, 04_long_01.txt, 04_long_02.txt, 04_long_03.txt, 04_long_04.txt, 05_hand_01.txt, 05_hand_02.txt, 05_hand_03.txt, 05_hand_04.txt
ケース名 結果 実行時間 メモリ
00_sample_01.txt AC 1 ms 3556 KiB
01_small_random_01.txt AC 17 ms 3716 KiB
01_small_random_02.txt AC 17 ms 3640 KiB
01_small_random_03.txt AC 17 ms 3672 KiB
01_small_random_04.txt AC 17 ms 3628 KiB
02_medium_random_01.txt AC 17 ms 4944 KiB
02_medium_random_02.txt AC 17 ms 4968 KiB
02_medium_random_03.txt AC 16 ms 4748 KiB
02_medium_random_04.txt AC 16 ms 4940 KiB
03_large_sparse_01.txt AC 19 ms 6264 KiB
03_large_sparse_02.txt AC 19 ms 6364 KiB
03_large_sparse_03.txt AC 19 ms 5868 KiB
03_large_sparse_04.txt AC 22 ms 6296 KiB
04_long_01.txt AC 26 ms 10792 KiB
04_long_02.txt AC 25 ms 10732 KiB
04_long_03.txt AC 26 ms 10140 KiB
04_long_04.txt AC 25 ms 10860 KiB
05_hand_01.txt AC 54 ms 39928 KiB
05_hand_02.txt AC 62 ms 61068 KiB
05_hand_03.txt AC 26 ms 18980 KiB
05_hand_04.txt AC 22 ms 3516 KiB