zoukankan      html  css  js  c++  java
  • UVA 10596 Morning Walk

    UVA_10596

    这个题目就是一个纯欧拉回路的问题,具体理论可以参考刘汝佳白书P112,如果这个图是连通的,并且每个点只与偶数条路相连,那么一定存在欧拉回路。于是,我们只要去判断图是否连通,以及每个点所连的路的数量即可。

    一开始我没有注意存在R=0的情况,RE了很多次,而且R=0时一定要输出Not Possible,但不管怎么说,存在路的交点但不存在任何一条路确实是比较诡异的……

    #include<stdio.h>
    #include
    <string.h>
    int dgr[210],p[210];
    int find(int x)
    {
    return p[x]==x?x:(p[x]=find(p[x]));
    }
    int main()
    {
    int i,j,u,v,N,R,ok,num;
    while(scanf("%d%d",&N,&R)!=EOF)
    {
    if(R==0)
    {
    printf(
    "Not Possible\n");
    continue;
    }
    memset(dgr,
    0,sizeof(dgr));
    for(i=0;i<N;i++)
    p[i]
    =i;
    for(i=0;i<R;i++)
    {
    scanf(
    "%d%d",&u,&v);
    if(find(u)!=find(v))
    p[find(u)]
    =find(v);
    dgr[u]
    ++;
    dgr[v]
    ++;
    }
    ok
    =1;
    for(i=0;!dgr[i];i++);
    for(j=i+1;j<N;j++)
    if(dgr[j]&&find(i)!=find(j))
    {
    ok
    =0;
    break;
    }
    num
    =0;
    if(ok)
    for(i=0;i<N;i++)
    if(dgr[i]%2!=0)
    num
    ++;
    if(!ok||num>0)
    printf(
    "Not Possible\n");
    else
    printf(
    "Possible\n");
    }
    return 0;
    }

      

  • 相关阅读:
    STM32学习中出现的错误
    原码 反码 补码 移码
    LiauidCrystal
    gpio 的配置
    ARM7探究
    导轨控制问题
    A4988驱动42步进电机
    arduino驱动oled
    计算机组成原理
    arduino basic issue
  • 原文地址:https://www.cnblogs.com/staginner/p/2172653.html
Copyright © 2011-2022 走看看