求条,如何判断图的连通性
查看原帖
求条,如何判断图的连通性
1557482
STCL楼主2025/8/1 15:37
#include<bits/stdc++.h>
#define int long long
using namespace std;
int n,m,cnt,ccnt;
map<string,int>du;
map<string,bool>b;
string st[250005],a[250005];
int top,k;
signed main()
{
    string x,y;string u,v;
    string start="";
    while(cin>>x>>y){
        u=x;v=y;
        if(!b[u])b[u]=1,a[++k]=u;
        if(!b[v])b[v]=1,a[++k]=v;
        // vc[u].push_back(v);vc[v].push_back(u);
        du[u]++;du[v]++;
    }
    bool p=0;
    for(int i=1;i<=k;i++){
        if(du[a[i]])p=1;
        if(du[a[i]]%2)cnt++;
        if(du[a[i]]%2&&start==""){start=i;}
    }
    if(!p){cout<<"Possible";return 0;}
    if(cnt&&cnt!=2){cout<<"Impossible";return 0;}
    cout<<"Possible";
}

蒟蒻不会判断图的连通性,求助

2025/8/1 15:37
加载中...