hdu 4738(双联通缩点)

AltiumDesigner.zip 立即下载

此题有坑!!!

桥的边权有可能是0,但是这时候要输出1,因为周瑜至少的排一个人去炸呀,那个年代又没有导弹!!!卧槽,有时候还得联系实际!

#include<cstdio>
#include<algorithm>
#include<cstring>
#include<stack>
#include<vector>
using namespace std;
const int inf = 1<<20;
const int maxn = 1005;
int n,m;
struct node
{
    int to;
    int next;
    int w;
    node(){}
    node(int a,int b,int c):to(a),next(b),w(c){}
}edge[1002*1002];
struct Edge
{
    int to;
    int w;
    Edge(int a,int b):to(a),w(b){}
};
vector<Edge>G[maxn];
int head[maxn],dfn[maxn],low[maxn],belong[maxn];
int tot,ti,cnt;
stack<int>s;
void tarjan(int u,int fa)
{
    dfn[u] = ++ti; low[u] = ti;
    s.push(u); int flag = 0;
    for(int i=head[u];i!=-1;i=edge[i].next)
    {
        int v = edge[i].to;
        if(v==fa&&flag==0){flag=1;continue;}
        if(!dfn[v])
        {
            tarjan(v,u);
            low[u] = min(low[u],low[v]);
        }
        else if(belong[v]==-1)
        {
            low[u] = min(dfn[v],low[u]);
        }
    }
    if(dfn[u]==low[u])
    {
        int y; cnt++;
        do{
            y = s.top(); s.pop();
            belong[y] = cnt;
        }while(y!=u);
    }
}
int res;
void dfs(int u,int fa)
{
    int len = G[u].size();
    for(int i=0;i<len;i++)
    {
        int v = G[u][i].to;
        if(v==fa) continue;
        res = min(res,G[u][i].w);
        dfs(v,u);
    }
}
void cbh(int u)
{
    dfn[u] = 1;
    for(int i=head[u];i!=-1;i=edge[i].next)
    {
        int v = edge[i].to;
        if(!dfn[v])
        {
            dfn[v] = 1;
            cbh(v);
        }
    }
}
int main()
{
    int u,v,w;
    while(scanf("%d%d",&n,&m))
    {
        if(n==0&&m==0) break;
        tot = 0;
        memset(head,-1,sizeof(head));
        for(int i=0;i<m;i++)
        {
            scanf("%d%d%d",&u,&v,&w);
            if(u==v) continue;
            edge[tot] = node(v,head[u],w);
            head[u] = tot++;
            edge[tot] = node(u,head[v],w);
            head[v] = tot++;
        }
        int key = 0;
        memset(dfn,0,sizeof(dfn));
        for(int i=1;i<=n;i++)
        {
            if(!dfn[i]){key++;cbh(i);}
        }
        if(key>1){printf("0\n");continue;}
        memset(dfn,0,sizeof(dfn));
        memset(low,0,sizeof(low));
        memset(belong,-1,sizeof(belong));
        ti = 0; cnt = 0;
        for(int i=1;i<=n;i++) if(!dfn[i]) tarjan(i,-1);
        if(cnt==1) {printf("-1\n"); continue; }
        for(int i=1;i<=n;i++) G[i].clear();
        for(int i=1;i<=n;i++)
        {
            for(int j=head[i];j!=-1;j=edge[j].next)
            {
                if(belong[i]!=belong[edge[j].to])
                {
                    G[belong[i]].push_back(Edge(belong[edge[j].to],edge[j].w));
                }
            }
        }
        res = inf;
        dfs(1,-1);
        if(res==0) res++;
        printf("%d\n",res);
    }
    return 0;
}


风储VSG-基于虚拟同步发电机的风储并网系统Simulink仿真 内容概要:本文介绍了“Plecs全桥LLC谐振变换器仿真模型”这一技术资源,聚焦于隔离型全桥LLC谐振变换器的建模、仿真与参数设计,涵盖其在电力电子系统中的关键应用,如软启动、闭环控制、变频控制及效率优化等。该模型支持对LLC变换器在不同工作模式下的动态响应与性能表现进行深入研究,适用于探究谐振拓扑结构、磁性元件设计、谐振参数匹配以及先进控制策略的科研与工程实践。同时,文档配套提供了仿真模型、设计报告与计算书等完整资料,强化了其实用性与教学价值。; 适合人群:具备电力电子、自动化或电气工程等相关专业背景,从事电力电子变换器研发、系统仿真与控制算法设计的科研人员、工程师及研究生。; 使用场景及目标:①用于全桥LLC谐振变换器的建模、仿真与动态性能分析;②支持对软启动过程、闭环稳压控制、变频调谐及效率优化等核心技术的研究与教学;③为电力电子电源系统的工程设计、参数优化与控制策略验证提供高精度仿真平台。; 阅读建议:建议结合Plecs或Simulink等仿真工具进行动手实践,重点理解电路拓扑构建、谐振参数计算、控制器设计与系统稳定性分析,并配合文档中的设计报告与计算书,系统掌握从理论到仿真的完整流程。 立即下载

相关推荐

国央企创新负责人如何通过平台实现科技创新资源的系统集成与高效配置?.docx

科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。

HDU 4738 双连通模版题

题意:给定n个点,m条无向边 下面m行表示u , v ,边权值 求所有桥中最小的桥的权值,如不存在输出-1 若图一开始就不连通或最小权值为0则输出1 附赠一大波测试数据:   #include #include #include #include #include #include #include #include

九野的博客 3281

百度智能云ASR实战:5分钟搞定Unity语音转文字(含完整代码)

本文详细介绍了如何在Unity中集成百度智能云ASR服务,实现高效的语音转文字功能。从环境配置、音频处理到服务端通信,提供完整代码示例和实战优化技巧,帮助开发者快速实现语音交互功能,适用于游戏开发、XR应用等场景。

ujm56789012的博客 215

HDU 5409 双连通缩点

HDU 5409 题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5409 题意: 给一个图一些边,保证图连通 问对于每条边,如果去除该边后使得图中一些点不连通。设这些点(u,v),要求使u尽量小,v尽量大,输出这样的(u,v)。否则输出0 0。 思路: 感谢http://www.cnblogs.com/oneshot/p/474884

beihai2013 746

VFIO框架源码分析(一)- 从初始化到设备访问

本文深入剖析了Linux内核中的VFIO(Virtual Function I/O)框架,详细解读了其从初始化到设备访问的全过程。VFIO通过Container->Group->Device的层次化设计,利用IOMMU提供安全隔离,允许用户空间直接访问物理设备。文章基于Linux v5.15版本,重点分析了vfio_init模块入口、Container创建与配置、Group关联以及最终设备访问等关键环节,揭示了VFIO如何通过逐层授权机制构建安全可靠的设备直通模型,为虚拟化技术提供核心支持。

qq_36071928的博客 380

FreeRTOS实战:STM32CubeMX配置USART+DMA实现高效串口通信(附完整代码)

本文详细介绍了如何使用FreeRTOS和STM32CubeMX配置USART与DMA实现高效串口通信。通过对比轮询、中断和DMA三种模式的性能差异,提供完整的STM32CubeMX配置步骤和代码实现,帮助开发者优化嵌入式系统的串口通信性能,显著提升数据吞吐量和系统响应速度。

weixin_29190169的博客 456

hdu6201(无向图最长路)

设置一个虚拟起点和虚拟终点,每个点与起点间一条负边,值为这个点书的价值的相反数(代表买书花钱),每个点与终点连一条正边,值为这个点的书的价格(代表卖书赚钱)。然后按照图中给的边建无向边,权值为负(代表路费)。然后就是跑最长路,spfa改一下松弛条件就行 #include #include #include #include using namespace std; const int maxn

constbh的博客 2448

NLP DAY1: 文本数据读取

txt 文本数据的读写CSV 及 Excel 文本数据的读写更多的 DataFrame 操作数据规模太大怎么办相信通过本次实验的学习,同学们可以游刃有余地面对各种数据文件了。在接下来的实验中,我们将开始真正地开启自然语言处理之旅,开始认识并熟悉一些常见的针对文本本身的预处理操作。

feifeikon的博客 1060

poj1724(带限制的最短路)

题意:一个人要从1点到N点,有m条边可以走,走每条边要花一些钱,这个人只有k的钱,问花的钱不多于K且能到N的最短路。 spfa解决最短路,不过dist数组要加一维,dist【i】【j】表示从1走到了i花了j钱的最短路。 感觉这时候就是个bfs #include #include #include #include using namespace std; int n,k; struct no

constbh的博客 1843

从零到一:ESP32与豆包大模型的RTC连续对话实现指南

文本实现ESP32S3 SparkBot与豆包大模型的RTC连续对话

举世誉之而不加劝,举世非之而不加沮,定乎内外之分,辩乎荣辱之境,斯已矣。 4365

Allegro如何去掉PCB内层未使用的过孔孔环?

在用Allegro进行PCB设计过程中,遇到铺铜铜箔被焊盘大量割断,导致铺铜不完整,这样就会导致铺铜过电流太小,影响板的性能,严重的会导致板工作不稳定,甚至不工作。解决办法:是去掉内层未使用的过孔孔环,增大过铜箔面积。

bhxc809751502的博客 2571

poj1815(最小割点集)

【题目大意】 现代社会人们都靠电话通信。A 与 B 能通信当且仅当 A 知道 B 的电话号或者 A 知道 C 的电话号且 C 与 B 能通信。若 A 知道 B 的电话号,那么 B 也知道 A 的电 话号。然而不好的事情总是会发生在某些人身上,比如他的电话本丢了,同时他 又换了电话号,导致他跟所有人失去了联系。现在给定 N 个人之间的通信关系 以及特定的两个人 S 和 T,问最少几个人发生

constbh的博客 934

ubuntu linux虚拟机安装部署openclaw详细教程(安装、问题处理)

本文详细介绍了在Ubuntu系统下安装OpenClaw AI助手的完整流程及常见问题解决方案。主要内容包括:1) 通过GIT、Node.js等基础环境配置;2) 使用官方脚本或源码编译两种方式安装OpenClaw;3) 配置向导中的关键选项说明;4) 针对systemctl服务启动失败等常见错误的处理方法。文章特别强调了权限管理、网络依赖和访问配置等易错环节,提供了修改service文件等具体解决方案,帮助开发者顺利完成部署并实现Web UI访问。教程实操性强,适合本地和云服务器环境部署参考。

少说,多做 2032

hoj2713(最小点权覆盖)

经典的最大点权独立集问题。转化为最小点权覆盖集:先将网格黑白染色,从源 点到每个黑点有一条边,从每个白点到汇点有一条边,容量均为相应宝石的价值。 每个黑点向与其相邻的四个白点连边,容量为∞。设最小割为 ans,结果即为∑ Cij – ans #include #include #include using namespace std; typedef int cap_type; #de

constbh的博客 577

定位精度再突破!Inner-MPDIoU让YOLOv11边界框回归更精准

Inner-MPDIoU 凭借辅助边框与最小点距离的双机制创新,彻底解决了传统 IoU 损失在边界框回归上的精度瓶颈。本教程从原理到代码实现,再到工业场景适配,完整呈现了其在 YOLOv11 中的集成路径。只需简单修改两处核心脚本,你的目标检测模型就能在边界框定位精度上实现跨越式提升——无论是学术研究中的指标突破,还是工业场景下的精细检测需求,Inner-MPDIoU 都能成为你攻克边界框回归难题的利器。现在就动手尝试,让你的检测模型在定位精度上再上一个台阶吧。

FJN110的博客 158

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

hdu5521

题意很简单,类似大白上uvalive机票的一道题。两遍迪杰斯特拉处理1和n为原点的最短路径,算出一个中间点,使该点到1加上该点到n的距离最短。 好久没写图论,看见这么大的数据脑子坏掉不会建图了。 注意最后算所有答案时,应该是max(dist1【i】,dist2【i】)==res时才算,一开始写的是 只要dist1[i[或者dist2[i]==res就输出,wa了两发。。。。 上代码,比较丑。

constbh的博客 564

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

hdu 3986

题目要求删除图上的一条边,使得最短路最长,也可以删边后不可达。 先跑一遍最短路,求出不删边时最短路上的所有边。然后枚举删除这些边,再次迪杰斯特拉,每次更新最大值。 作为一个菜鸡,这题一A了,然后没出息的笑了笑。 上代码 #include #include #include #include #include using namespace std; const int maxn = 100

constbh的博客 516

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

hdu1535

题目要求计算从1出发到各个点之后在从各个点回到1所花费最小。 两遍最短路,第一遍求出1点到所有点的最短距离,第二遍重建反向图,求得1点到所有点距离就是所有点到1点的最短路。 #include #include #include #include using namespace std; const int inf = 1000000001; int n,m; struct node{ int

constbh的博客 514

loj#526. 「LibreOJ β Round #4」子集

给N个点,给出建边的条件,求图中的最大团,直接跑最大团模板会超时,建个对偶图,跑二分图匹配,最大团子集中点的个数就是n-匹配数 #include #include using namespace std; const int maxn = 505; int n; long long num[maxn]; int match[maxn]; int vis[maxn]; int bmap[maxn]

constbh的博客 512

SGU326(最大流)

同样,所有和球队 1 相关的比赛全让球队 1 赢,如果此 时仍有某支球队胜利的场数大于球队 1,则已经不可能满足要求。按如下方法建 图:所有小组内的比赛 i(不包括与球队 1 相关的比赛)作为一个点并加边(s, i, num[i]),每支球队(不包括球队 1)作为一个点并加边(j, t, wins[1]-wins[i]),每场 比赛向与其关联的两支球队 u, v 连边(i, u, ∞),

constbh的博客 510

woj1124(网络流好题)

【题目大意】 有 N 支球队,互相之间已经进行了一些比赛,还剩下 M 场没有比。现在给出各支球队目前的总分以及还剩下哪 M 场没有比,问能否合理安排这 M 场比赛的结果,使得第 N 支球队最后的总分大于其他任何一支球队的总分。已知每场比赛胜者得 2 分,败者 0 分,平局则各得 1 分。(1 【建模方法】 首先,所有跟球队 N 相关的比赛都要让球队 N 赢。如果此时仍有某支球队的总分大于等

constbh的博客 497

hdu 2242(图的双联通&树形dp)

对于一个连通图,如果任意两点至少存在两条点不重复路径,则称这个图为点双连通的(简称双连通);如果任意两点至少存在两条边不重复路径,则称该图为边双连通的。点双连通图的定义等价于任意两条边都同在一个简单环中,而边双连通图的定义等价于任意一条边至少在一个简单环中。对一个无向图,点双连通的极大子图称为点双连通分量(简称双连通分量),边双连通的极大子图称为边双连通分量。 删除一条边以后还互相连通的教室就是

constbh的博客 489

poj 3160 (强连通缩点&简单dp)

Flymouse从武汉大学ACM集训队退役后,做起了志愿者,在圣诞节来临时,Flymouse要打扮成圣诞老人给集训队员发放礼物。集训队员住在校园宿舍的不同寝室,为了节省体力,Flymouse决定从某一个寝室出发,沿着有向路一个接一个的访问寝室并顺便发放礼物,直至能到达的所有寝室走遍为止。对于每一个寝室他可以经过无数次但是只能进入一次,进入房间会得到一个数值(数值可正可负),他想知道他能获得最大的数

constbh的博客 467

51Nod 1757(二分&网络流)

二分答案,用网络流去判断,这个时间是否可行。m遍dfs求出每个非洞口节点到每个洞口的距离。设置一个虚拟源点和汇点,建图时把在x时间内可以到达洞口的点与洞口连一条容量为1 的边。把每个洞口分成x个点,连向汇点,容量为1.把每个非洞口节点与源点连一条边,容量为1。每个洞口的第i个节点向第i+1个节点连一条无穷大的边,然后就只要判断汇点的流量是否为n-m就行啦。 #include

constbh的博客 459

hdu 3594(强连通&判环)

题意让判断一个图是不是仙人掌图。 仙人掌图就是一个强连通图并且一条边只属于一个环。 判断强连通用一次tarjan即可,然后tarjan的dfs过程中可以判环。 记录每个未访问节点的父亲节点,如果一个节点被访问过,就沿着他的父亲节点找回去,给路径上的每个点的度数都加一,如果一个点的度数大于1,说明这不是仙人掌图。 #include #include #include #include usi

constbh的博客 458

918知道了几个新的概念

最小支配集:对于图G=(V,E)来说,最小支配集指的是从V中尽量取少的点组成一个集合,使得V中剩余的点都与取出来的点有边相连。设V1是图G的一个支配集,则对于图中的任意一个顶点u,要么属于集合V1,要么与V1中的点相邻。在V1中去除任何一个元素后V1不在是支配集,则V是图G的最小支配集。 最小点覆盖:对于图G=(V,E)来说,最小点覆盖指的是从V中取尽量少的点组成一个集合,使得E中所有边

constbh的博客 451
上一篇: hdu 5889 spfa&最小割
下一篇: hdu(4635)
constbh
博客等级 码龄10年 10粉丝 121原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值