zoukankan      html  css  js  c++  java
  • UVa 10054 The Necklace【欧拉回路】

    题意:给出n个珠子,珠子颜色分为两半,分别用1到50之间的数字表示,

    现在给出n个珠子分别的颜色,问是否能够串成一个环。即为首尾相连,成为一个回路

    判断是否构成一个环,即判断是否为欧拉回路,只需要判断度数是不是偶数就可以了

    (这道题目给出的珠子是在一个连通块上的,所以不用考虑连通)

    然后输出结果要逆序输出,见这一篇,非常的详细 http://www.cnblogs.com/scau20110726/archive/2012/11/09/2762371.html

     1 #include<iostream>  
     2 #include<cstdio>  
     3 #include<cstring> 
     4 #include <cmath> 
     5 #include<stack>
     6 #include<vector>
     7 #include<map> 
     8 #include<queue> 
     9 #include<algorithm>  
    10 #define mod=1e9+7;
    11 using namespace std;
    12 
    13 typedef long long LL;
    14 const int maxn =1005;
    15 int g[maxn][maxn],d[maxn];
    16 
    17 void euler(int u){
    18     for(int v=1;v<=50;v++){
    19         if(g[u][v]){
    20         g[u][v]--;
    21         g[v][u]--;
    22         euler(v);
    23         printf("%d %d
    ",v,u);
    24         }
    25     }
    26 }
    27 
    28 int main(){
    29     int n,i,j,t,u,v,flag,kase;
    30     scanf("%d",&t);
    31     for(kase=1;kase<=t;kase++){
    32         memset(g,0,sizeof(g));
    33         memset(d,0,sizeof(d));
    34         
    35         scanf("%d",&n);
    36         for(i=1;i<=n;i++){
    37             scanf("%d %d",&u,&v);
    38             g[u][v]++;//这里是可以输入有重边的,所以重边对应的点的度数也要相应加1,记得杭电有一题要判重 
    39             g[v][u]++;
    40             d[v]++;
    41             d[u]++;
    42         }
    43         for(i=1;i<=50;i++){
    44             if(d[i]%2) break;        
    45         }
    46         
    47         if(kase>1) printf("
    ");
    48         printf("Case #%d
    ", kase);
    49         
    50         if(i<=50) printf("some beads may be lost
    ");
    51         else{
    52             for(i=1;i<=50;i++){
    53                 euler(i);
    54             }
    55         }  
    56     }
    57     return 0;    
    58 }
    View Code
  • 相关阅读:
    SecureCRT安装
    wmv12下安装centos7
    SpringMVC(十二):SpringMVC 处理输出模型数据之@ModelAttribute
    oracle之 redo过高诊断
    oracle之 手动创建 emp 表 与 dept 表
    oracle之 11.2.0.4 bbed安装
    oracle12c之 控制pdb中sga 与 pga 内存使用
    storm之 Storm 工作原理
    spark之 spark 2.2.0 Standalone安装、wordCount演示
    hadoop之 参数调优
  • 原文地址:https://www.cnblogs.com/wuyuewoniu/p/4341568.html
Copyright © 2011-2022 走看看