Tyvj(无向图的桥)

摘要:
题目链接分析:无向图的桥tip这么裸的题我为什么没有一A呢因为我又把n和m搞混啦!!!

题目链接

分析:
无向图的桥

tip

这么裸的题我为什么没有一A呢
因为我又把n和m搞混啦!!!

这里写代码片
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>

using namespace std;

const int N=210;
int n,m;
struct node{
    int x,y,nxt;
    bool p;
};
node way[1010];
int pre[N],back[N],tt=0,tot=0,st[N],an=0;
struct po{
    int x,y;
};
po ans[1010];

void add(int u,int w)
{
    tot++;
    way[tot].x=u;way[tot].y=w;way[tot].nxt=st[u];st[u]=tot;
}

int cmp(const po &a,const po &b)
{
    if (a.x!=b.x) return a.x<b.x;
    else return a.y<b.y;
}

int dfs(int now,int fa)
{
    int ch=0;
    int low=pre[now]=++tt;
    for (int i=st[now];i;i=way[i].nxt)
    {
        int v=way[i].y;
        if (!pre[v])
        {
            int lowv=dfs(v,now);
            low=min(low,lowv);
            ch++;
            if (lowv>pre[now])  //存在即合理 
            {
                an++;
                ans[an].x=min(now,v);
                ans[an].y=max(now,v); 
            }  
        }
        else if (pre[v]<pre[now]&&v!=fa)
        {
            low=min(low,pre[v]);
        }
    }
    back[now]=low;
    return low;
}

int main()
{
    scanf("%d%d",&n,&m);
    for (int i=1;i<=m;i++)
    {
        int u,w;
        scanf("%d%d",&u,&w);
        add(u,w);
        add(w,u);
    }
    dfs(1,-1);
    sort(ans+1,ans+1+an,cmp);
    int xx=-1;
    int yy=-1;
    for (int i=1;i<=an;i++)
        if (xx!=ans[i].x|yy!=ans[i].y)
        {
            printf("%d %d
",ans[i].x,ans[i].y);
            xx=ans[i].x;
            yy=ans[i].y;
        }
    return 0;
}

免责声明:文章转载自《Tyvj(无向图的桥)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇《JavaScript 高级程序设计》总结Tyvj-超级书架下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

基于 WebRTC 的 RTSP 视频实时预览

该方案采用基于WebRTC的视频即时消息,其原生支持RTP协议的解码,因此延迟可以非常低,约为0.2-0.4秒。其他方案的延迟大于1秒。WebRTC需要浏览器。您可以在以下地址查看支持的浏览器。WebRTC实现基于web的视频会议。标准是WHATWG协议。其目的是通过浏览器提供简单的javascript来实现实时通信功能。Github中有很多WebRTC的实...

SAP OBA1 外币评估是基于财务目的,为了不影响报表而做的估算值,在月末进行评估,在下月初进行冲回。

评估报告按行项目显示结果。4.评估策略外币的未清项评估有三种策略:1)期末评估,下期初冲回。因此目前每年底改变外币汇率时进行外币余额和未清项的评估,不冲回。②资产负债表指定日,一般是一年的最后一天。③资产负债表准备评估。如果选择该项,则视为年结评估,不能产生冲销凭证。外币未清项评估是按借贷分别统计后做的调整凭证。...

wifi密码暴力破解

转自:Python最新暴力破解WiFi,攻破所有密码限制,最强破解!...

Sublime Text3注册激活和部分配置

此时,我们可以输入要安装的插件包ConvertToUTF85。设置中文对齐方式、字体等//设置默认代码“default_encoding”:“UTF-8”,//显示代码“show_encoding”:true,//显示行号“show_line_endings”:true,//设置字号“font_size”:14,//设置字体对齐方式“font_options...

[转]从minio中读取文件流进行下载文件

本文转自:https://blog.csdn.net/ZHANGLIZENG/article/details/82892678一、获取Minio连接publicstaticStringminioUrl;publicstaticStringminioUsername;publicstaticStringminioPassword;@Value("${syste...

Java成长之路

如何学习如何从初级Java程序员成长为合格的架构师,或者一个合格的架构师应该拥有什么样的技术知识体系,这不仅是一个刚进入职场的初级程序员,也是一个工作了三年或五年后感到困惑的老程序员面临的问题。首先必须明确Java的突出之处和不同之处。...