⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 1022.cpp

📁 我的URAL的1000 ~ 1050 的全部代码 包含WA 最后AC的程序 有2~3个比较难的是MAIGO的程序
💻 CPP
字号:
//toplogical sort;
#include <iostream>
using namespace std;

const int maxN = 100;
bool map[maxN + 1][maxN + 1];
int deg[maxN + 1];
int ord[maxN + 1];
int n;
void readIn()
{
     int i;
     memset( deg, 0, sizeof(deg) );
     memset( map, 0 , sizeof(map) );
     cin >> n;
     for( i = 1 ; i <= n; i++ )
     {
          int t;
          while (cin >> t, t!= 0) { map[i][t] = true; deg[t] ++; }
     }
     
}

void work()
{
     int i,j,k;
     for( i = 1; i <= n; i++ )
     {
          j = 1;
          while( deg[j] != 0 ) j++;
          deg[j] = -1;
          ord[i] = j;
          for( k = 1; k <= n; k++)
               if(map[j][k]) deg[k]--;
     } 
}
void output()
{
     int i;
     for( i = 1; i <= n; i++ )
          cout << ord[i] << ' ';
     cout << endl;
}
int main()
{
    readIn();
    work();
    output();
    return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -