记录编号 35479 评测结果 AAAAAAAAAA
题目名称 [金陵中学2007] 传话 最终得分 100
用户昵称 Gravatar王者自由 是否通过 通过
代码语言 C++ 运行时间 0.052 s
提交时间 2012-02-22 15:47:34 内存使用 4.97 MiB
显示代码纯文本
#include <cstdio>
#include <queue>
using namespace std;
const int MAXN = 1111;
int n, m, x, y, k, G[MAXN][MAXN];
bool c[MAXN];
bool BFS(int s) {
    int u, v;
    for(u=1; u<=n; u++)
        c[u] = 0;
    c[s] = true;
    queue<int> Q;
    Q.push(s);
    while(!Q.empty()) {
        u = Q.front(); Q.pop();
        for(int j=1; j<=G[u][0]; j++) {
            v = G[u][j];
            if(v == s) return true;
            if(!c[v]) {
                c[v] = true;
                Q.push(v);
            }
        }
    }
    return false;
}
int main() {
    freopen("messagez.in","r",stdin);
    freopen("messagez.out","w",stdout);
    scanf("%d %d", &n, &m);
    for(int i=1; i<=m; i++) {
        scanf("%d %d", &x, &y);
        G[x][++G[x][0]] = y;
    }
    for(int i=1; i<=n; i++)
        printf("%c\n", BFS(i) ? 'T' : 'F');
    return 0;
}