1 条题解

  • 0
    @ 2026-6-17 0:01:54

    // 传递闭包 Floyd 算法 O(n^3)
    #include<bits/stdc++.h>
    using namespace std;
    
    int n,d[110][110];
    
    int main(){
      cin>>n;
      for(int i=1; i<=n; i++)
      for(int j=1; j<=n; j++)
        cin>>d[i][j];
      
      for(int k=1; k<=n; k++)
      for(int i=1; i<=n; i++)if(d[i][k])
      for(int j=1; j<=n; j++)
        if(d[k][j]) d[i][j]=1;
      for(int i=1; i<=n; i++){
        for(int j=1; j<=n; j++)cout<<d[i][j]<<' ';
        cout<<'\n';
      }
    }
    
    • 1

    D111【模板】最短路→传递闭包 Floyd 算法 B3611 传递闭包

    信息

    ID
    12496
    时间
    1000ms
    内存
    256MiB
    难度
    9
    标签
    递交数
    8
    已通过
    6
    上传者