zoukankan      html  css  js  c++  java
  • 1049-飞机最少换乘次数问题

    描述

     

    设有n个城市,编号为0n-1m条单向航线的起点和终点由输入提供,寻找一条换乘次数最少的线路方案。

    输入

     

    第一行为三个整数nmv,表示城市数、单向航线数和起点城市。以下m行每行两个整数,表示一条边的起点、终点,保证不重复、不失败。2n201m190

    输出

     

    n-1行,分别是从起点城市v到其他n-1个城市最少换乘次数,按照终点城市序号从小到大顺序输出,不能抵达时输出-1

    样例输入

    3 2 0

    0 1

    1 2

    样例输出

    1

    2

    #include<iostream>
    #include<list>
    using namespace std;
    int a[20][20]={0};
    int b[20];
    int n;
    bool *visit;
    void bfs(int v)
    {
        list<int> q;
        int j=1;
        int i;
        if(!visit[v])
        {
            q.push_back(v);
            visit[v]=true;
        }
        while(q.size()>0)
        {
            int t=q.front();
            q.pop_front();
            for(i=0;i<n;i++)
            {
                if(a[t][i]&&!visit[i])
                {
                    q.push_back(i);
                    visit[i]=true;
                    b[i]=j;
                }
            }
            j++;
        }
    }
    int main()
    {
        int m,v;
        cin>>n>>m>>v;
        int i,j;
        int x,y;
        for(i=0;i<m;i++)
        {
            cin>>x>>y;
            a[x][y]=1;
        }
        visit=new bool[n];
        for(i=0;i<n;i++)
        {
            visit[i]=false;
            b[i]=-1;
        }
        bfs(v);
        for(j=1;j<n;j++)
            cout<<b[j]<<endl;
        delete[]visit;
        return 0;
    }
    

      

  • 相关阅读:
    windows关闭aslr办法
    linux关闭地址空间随机化(ASLR)
    Hadoop 2.7.2 集群搭建(转载)
    ssh免密码登录
    二、hadoop文件操作
    一、hadoop安装与配置
    转载model操作
    python实现线程池
    自定义django admin及其界面
    django管理界面使用与bootstrap模板使用
  • 原文地址:https://www.cnblogs.com/Rosanna/p/3436646.html
Copyright © 2011-2022 走看看