1380 一笔画问题

如果一个无向图存在一笔画,则一笔画的路径叫做欧拉路,如果最后又回到起点,那这个路径叫做欧拉回路。

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
#define N 510
int g[N][N],d[N],c[N],n,m,reckon,oddity_point,lt;
void dfs(int i)
{
    for(int j=1;j<=n;j++)
    {
        if(g[i][j]==1)
        {
            g[i][j]=0;
            g[j][i]=0;
            dfs(j);
        }
    }
    c[++reckon]=i;
    
    return;
}
int main()
{
    cin>>n>>m;
    int x,y;
    memset(g,0,sizeof(g));
    for(int i=1;i<=m;i++)
    {
        cin>>x>>y;
        g[x][y]=1;
        g[y][x]=1;
        d[x]++;
        d[y]++;
    }
    int z=1;
    for(int i=1;i<=n;i++)
    {
        if(d[i]%2==1)
        {
            z=i;
            oddity_point++;
        }
        if(d[i]==0)
        {
            lt++;
        }
    }
    dfs(z);
    if(oddity_point!=2&&oddity_point!=0)
    {
        cout<<"NO";
        return 0;
    }
    if(lt!=0)
    {
        cout<<"NO";
        return 0;
    }
    for(int i=1;i<=reckon;i++)
    {
        cout<<c[i]<<" ";
    }
    return 0;
}
相关推荐
北风toto7 小时前
深入解析JWT Token生成原理与安全加密技术详解
算法·安全·哈希算法
DeepModel7 小时前
通俗易懂讲透 EM 算法(期望最大化)
人工智能·python·算法·机器学习
Pentane.7 小时前
【力扣hot100】【Leetcode 15】三数之和|暴力枚举 双指针 算法笔记及打卡(14/100)
数据结构·笔记·算法·leetcode
不知名的老吴7 小时前
高阶函数的应用与函数对象概念
算法
Mr_pyx7 小时前
【LeetCode Hot 100】 - 缺失的第一个正数完全题解
数据结构·算法
wydxry8 小时前
深入解析自适应光学中的哈特曼波前传感技术:原理、算法与智能化前沿
大数据·人工智能·算法
xieliyu.8 小时前
Java顺序表实现扑克牌Fisher-Yates 洗牌算法
java·数据结构·算法·javase
ICscholar8 小时前
推荐系统常用指标NDCG含义及公式
人工智能·深度学习·算法
闲人xyz8 小时前
01|把一次用户请求做成可持续执行的回合:主循环才是 Agent 的骨架
算法·面试
超级码力6668 小时前
【Latex魔术注解+导言区】Latex魔术注解+导言区分类介绍
算法·数学建模