zoukankan      html  css  js  c++  java
  • HDU1285——确定比赛名次(拓扑排序)

    http://acm.hdu.edu.cn/showproblem.php?pid=1285

    题意:是通过已知的比赛结果,判断名次。

    1.用邻接矩阵存储

    2.用一个一维数组存储当前点的入度。当该点的入度是0时,输出该点,并将与他相连的点的度数减一。寻找下一个读数为0的点。。。。。

    #include<cmath>
    #include<cstring>
    #include<iostream>
    using namespace std;
    int G[505][505],a,b;
    int in[505],vis[505],n,m;
    int main(){
        while(~scanf("%d%d",&n,&m)&&n+m){
                for(int i=1;i<=n;i++){
                for(int j=1;j<=n;j++){
                    G[i][j]=0;
                }
            }
                memset(in,0,sizeof(in));
                memset(vis,0,sizeof(vis));
            for(int i=0;i<m;i++){
                scanf("%d%d",&a,&b);
                G[a][b]=1; 
            }
            for(int i=1;i<=n;i++){
                for(int j=1;j<=n;j++){
                    if(G[i][j]==1){
                        in[j]++;
                    } 
                }
            }
            int first=1;
            for(int i=1;i<=n;i++){
                    int u;
                    for(int j=1;j<=n;j++){
                        if(!in[j]&&!vis[j]){
                            vis[j]=1;
                            u=j;
                            break;
                        }
                    }
                    if(first){
                        printf("%d",u);
                        first=0;
                    }else{
                        printf(" %d",u);
                    }
                    for(int j=1;j<=n;j++){
                        if(G[u][j]==1){
                            G[u][j]=0;
                            in[j]--;
                        }
                        
                    }
                
            }
            printf("
    ");
        }
        return 0;
    } 
  • 相关阅读:
    统计代码行数
    梯度下降算法
    multiplot 安装与配置
    ros 源码安装
    cmake 指定gcc/g++版本
    python 科学计算基础库安装
    协方差矩阵的含义
    pysvn 相关
    void 0与undefined
    BEM规范
  • 原文地址:https://www.cnblogs.com/Yvettey-me/p/4542234.html
Copyright © 2011-2022 走看看