zoukankan      html  css  js  c++  java
  • luogu_1613 跑路

    #include <cstdio>
    #include <iostream>
    #include <queue>
    #include <cctype>
    #include <vector>
    #include <cstring>
    using namespace std;
    int n,m,d[70][70];
    bool G[70][70][70];
    
    int read(){
        char c; int x=0;
        c=getchar();
        while(c<48){
            c=getchar();
        }
        while(c>=48){
            x=x*10+c-'0';
            c=getchar();
        }
        return x;
    }
    
    int main(){
        memset(d,10,sizeof(d));
        n=read(); m=read();
        while(m--){
            int u,v; 
    		u=read(); v=read();
            d[u][v]=1;
            G[u][v][0]=true;
        }
        for(int k=1;k<=64;k++)
        	for(int i=1;i<=n;i++)
        		for(int j=1;j<=n;j++)
        			for(int l=1;l<=n;l++)
        				if(G[i][j][k-1] && G[j][l][k-1]){
        					G[i][l][k]=true;
        					d[i][l]=1;
    					}
    	for(int k=1;k<=n;k++)
    		for(int i=1;i<=n;i++)
    			for(int j=1;j<=n;j++)d[i][j]=min(d[i][j],d[i][k]+d[k][j]);
    	printf("%d
    ",d[1][n]);
        return 0;
    }
    

      

  • 相关阅读:
    String类的常用方法
    StringBuffer和String的区别
    docker安装kali
    6.找素数
    5.三羊献瑞
    4.迷宫大逃亡
    3.百米
    2.后台登录
    1.猴子吃桃
    深入理解Docker容器和镜像
  • 原文地址:https://www.cnblogs.com/codetogether/p/7608009.html
Copyright © 2011-2022 走看看