zoukankan      html  css  js  c++  java
  • kuangbin_ShortPath H (POJ 3660)

    本来想自己写个bfs让他顺着胜负边爬 走到拐弯处就判定无法确定次序

    然后我发现有多余的边并不会自己省略掉 要写个O(n^3)的删掉多余边这都不如Floyd了

    看奚政学长写的是拓扑序也能解 然后在理解看他的文章的时候智商下线了 Floyd都没认出来

    最后自己写了个(标准)Floyd 华丽得wa了 然后查出来是i j k 次序写的不好 嗯原始算法还是要复习一下的

    有空去学一下拓扑序解法 以上

    #include <cstdio>
    #include <cstring>
    
    int main()
    {
        int map[110][110];
        int n, m;
        memset(map, 0, sizeof map);
    
        scanf("%d%d", &n, &m);
        while(m--){
            int a, b;
            scanf("%d%d", &a, &b);
            map[a][b] = 1;
        }
        for(int i = 1; i <= n; i++){
            for(int j = 1; j <= n; j++){
                for(int k = 1; k <= n; k++){
                    if(map[j][i] && map[i][k]){
                        map[j][k] = 1;
                    }
                }
            }
        }
        int res = 0;
        for(int i = 1; i <= n; i++){
            int count = 0;
            for(int j = 1; j <= n; j++){
                count += map[i][j] + map[j][i];
            }
            if(count == n - 1 ) res++;
        }
        printf("%d
    ", res);
        return 0;
    }
  • 相关阅读:
    javascript编程——闭包概念
    Chromium源码编译和初步的代码阅读
    No Code 趋势小记
    Electron中require报错的解决与分析
    C# 值类型与引用类型
    C# 静态成员 和 实例成员
    C# 标识符 和 关键字
    C# 基础知识
    Taghepler
    JQuery 速查表
  • 原文地址:https://www.cnblogs.com/quasar/p/5084079.html
Copyright © 2011-2022 走看看