zoukankan      html  css  js  c++  java
  • rwkj 1502

    #include <iostream>
    #include <queue>
    using namespace std;
    const int N=20;
    int g[N][N],bz[N]={0},n,flag=0;
    void bfs(int x)
    { int t,i;
    queue <int> q;
    q.push(x); bz[x]=1;
    while (!q.empty())
    { 
    t=q.front(); q.pop(); 
    
    if (flag==0)
            {  cout<<t; flag=1;}
            
     else cout<<" "<<t;  
       
    
    for (i=0; i<n; i++)
      if (g[i][t]==1 && bz[i]==0) 
          { q.push(i); bz[i]=1;}
    } 
    }
    int main(int argc, char *argv[])
    {
    int i,t,x,y;
    cin>>n>>t;
    for (i=1; i<=t; i++) 
    {  cin>>x>>y; g[x][y]=g[y][x]=1; }
    bfs(0);
    cout<<endl;
    return 0;
    }
    View Code

    #include <iostream>
    #include <queue>
    using namespace std;
    const int N=20;
    int g[N][N],bz[N]={0},n,flag=0;
    void bfs(int x)
    {

    int t,i;
    queue <int> q;
    q.push(x);   bz[x]=1;
    while (!q.empty())
    {
    t=q.front(); q.pop();

    if (flag==0)
            {  cout<<t; flag=1;}
           
     else cout<<" "<<t; 
      

    for (i=0; i<n; i++)
      if (g[i][t]==1 && bz[i]==0)
          { q.push(i); bz[i]=1;}
    }
    }
    int main(int argc, char *argv[])
    {
    int i,t,x,y;
    cin>>n>>t;
    for (i=1; i<=t; i++)
    {  cin>>x>>y; g[x][y]=g[y][x]=1; }
    bfs(0);


    cout<<endl;
    return 0;
    }

    #include <iostream>
    #include<queue>
    using namespace std;
    const int N=20;
    int g[N][N],bz[N]={0};
    int n;
    void bfs(int x)
    {
        int t,i;
        int c=0;
        queue<int>q;
        q.push(x);  bz[x]=1;
        while(!q.empty())
        {  t=q.front();  q.pop();c++;
        
         if(c==1)cout<<t;
            else cout<<" "<<t;
    
            for(i=0;i<n;i++)
              if(g[i][t]==1 && bz[i]==0){  q.push(i); bz[i]=1;}
        }
    }
    
    
    
    
    
    int main(int argc, char *argv[])
    {
     int i,t,x,y;
     cin>>n>>t;
     for(i=1;i<=t;i++)
     {
         cin>>x>>y;
         g[x][y]=g[y][x]=1;
     }    
     bfs(0);
     cout<<endl;
        return 0;
    }
    View Code

    #include <iostream>
    #include<queue>
    using namespace std;
    const int N=20;
    int g[N][N],bz[N]={0};
    int n;
    void bfs(int x)
    {
     int t,i;
     int c=0;
     queue<int>q;
     q.push(x);  bz[x]=1;
     while(!q.empty())
     {  t=q.front();  q.pop();c++;
     
      if(c==1)cout<<t;
            else cout<<" "<<t;

      for(i=0;i<n;i++)
        if(g[i][t]==1 && bz[i]==0){  q.push(i); bz[i]=1;}
     }
    }

    int main(int argc, char *argv[])
    {
     int i,t,x,y;
     cin>>n>>t;
     for(i=1;i<=t;i++)
     {
      cin>>x>>y;
      g[x][y]=g[y][x]=1;
     } 
     bfs(0);
     cout<<endl;
     return 0;
    }

    ********************************************************************************************************************

    //1502
    #include <stdio.h>
    #include <string.h>
    #include <queue>
    using namespace std;
    #define N 10
    int g[N][N],bz[N],n,m,t;
    queue <int> q;
    void BFS(int cur)
    { int j;
    bz[cur]=1; q.push(cur);
    while (!q.empty())
    { cur=q.front(); printf("%d", cur);t++;
    if(t==n)printf(" ");
    else printf(" ");
    q.pop();
    for (j=1;j<=N;j++)
    if (bz[j]==0 && g[cur][j]==1) { q.push(j); bz[j]=1; }
    }
    }
    void input()
    { int i,j,f;
    scanf("%d%d",&n,&m);
    for (int i=1; i<=m; i++)
    { scanf("%d%d",&f,&t); g[f][t]=g[t][f]=1; }
    }
    int main()
    { memset(g,0,sizeof(g)); memset(bz,0,sizeof(bz));
    input(); BFS(0);
    }

    **************************************************************************************************************


    //1502
    #include <iostream>
    #include <cstring>
    #include <queue>
    #define N 100
    using namespace std;

    int map[N][N],bz[N];
    int n,m,flag;

    queue <int> my;

    void bfs(int s)
    { int t,i;
    bz[s]=1;
    my.push(s);
    while (!my.empty())
    { t=my.front();
    my.pop();
    if (flag==0)
    { cout<<t; flag=1;}
    else cout<<" "<<t;
    for (i=0; i<n; i++)
    {
    if (map[t][i]==1 && bz[i]==0)
    { bz[i]=1;
    my.push(i);
    }
    }
    }
    }

    int main()
    {
    int x,y;
    cin>>n>>m;
    memset(map,0,sizeof(map));
    memset(bz,0,sizeof(bz));
    while (m--)
    {
    cin>>x>>y;
    map[x][y]=map[y][x]=1;
    }
    flag=0;
    bfs(0);
    cout<<endl;
    return 0;
    }


    *******************************************************************************************************

    //1502

    #include <iostream>
    #include <queue>
    using namespace std;

    queue <int> T;

    int a,b,tu[100][100],bz[100],v=0;

    void BFS(int k)
    { int t,i;
    T.push(k);
    bz[k]=1;
    while(!T.empty())
    {
    t=T.front();
    v++;
    T.pop();
    if(v!=a)cout<<t<<" ";
    else cout<<t<<endl;
    for(i=0;i<a;i++)
    if(tu[t][i]==1&&bz[i]==0)
    { bz[i]=1;
    T.push(i);
    }
    }
    }

    int main()
    {
    int i=0,b,x,y,ans;
    cin>>a>>b;
    while (i<b)
    { cin>>x>>y;
    tu[x][y]=tu[y][x]=1;
    i++;
    }
    BFS(0);
    return 0;
    }

  • 相关阅读:
    HDU 2844 Coins(多重背包)
    HDU 4540 威威猫系列故事——打地鼠(DP)
    Codeforces Round #236 (Div. 2)
    FZU 2140 Forever 0.5
    HDU 1171 Big Event in HDU(DP)
    HDU 1160 FatMouse's Speed(DP)
    ZOJ 3490 String Successor
    ZOJ 3609 Modular Inverse
    ZOJ 3603 Draw Something Cheat
    ZOJ 3705 Applications
  • 原文地址:https://www.cnblogs.com/2014acm/p/3898686.html
Copyright © 2011-2022 走看看