1 条题解

  • 0
    @ 2025-6-13 16:01:23
    #include <bits/stdc++.h>
    using namespace std;
    int n, m;
    bool g[105][105];
    int main()
    {
        ios::sync_with_stdio(false);
        cin.tie(0);
        cin >> n >> m;
        for (int i = 1; i <= m; i++)
        {
            int u, v;
            cin >> u >> v;
            g[u][v] = true;
        }
        for (int k = 1; k <= n; k++)
            for (int i = 1; i <= n; i++)
                for (int j = 1; j <= n; j++)
                    g[i][j] = g[i][j] || g[i][k] && g[k][j];
        int ans = 0;
        for (int i = 1; i <= n; i++)
        {
            bool flag = true;
            for (int j = 1; j <= n; j++)
                if (i != j && !g[i][j] && !g[j][i])
                {
                    flag = false;
                    break;
                }
            ans += flag;
        }
        cout << ans << endl;
        return 0;
    }
    
    • 1

    信息

    ID
    3219
    时间
    1000ms
    内存
    125MiB
    难度
    3
    标签
    递交数
    8
    已通过
    2
    上传者