No.11 - POJ3268 SPFA 最短路

DuCut_1794120730156_604.mp4 立即下载

SPFA算法,求两次最短路:

// ShellDawn
// POJ3268
// No.11

#include<algorithm>
#include<cstdio>
#include<iostream>
#include<cstring>
#include<queue>
#include<vector>
#define MM(x) memset(x,0,sizeof(x))
#define MMF(x) memset(x,0x3f,sizeof(x))
#define INF 0x3f3f3f3f
#define NINF 0xc0c0c0c0
using namespace std;


#define maxn 1005
int n,m,s;
// 邻接表
int EA[maxn][maxn][2];
int cntA[maxn];
int EB[maxn][maxn][2];
int cntB[maxn];
// end
int ansA[maxn];
int ansB[maxn];

void SPFA(int ans[maxn],int E[maxn][maxn][2],int cnt[maxn]){
    queue<int> q;
    ans[s] = 0;
    q.push(s);
    while(!q.empty()){
        int loc = q.front();
        q.pop();
        for(int i=0;i<cnt[loc];i++){
            int next = E[loc][i][0];
            int v = E[loc][i][1];
            if(ans[loc] + v < ans[next]){
                ans[next] = ans[loc] + v;
                q.push(next);
            }
        }
    }
}

int main(){
    //freopen("A.txt","r",stdin);
    while(~scanf("%d%d%d",&n,&m,&s)){
        MM(EA);MM(EB);MM(cntA);MM(cntB);
        for(int i=0;i<m;i++){
            int a,b,c;
            cin>>a>>b>>c;
            int loc = cntA[a];
            EA[a][loc][0] = b;
            EA[a][loc][1] = c;
            cntA[a] ++;
            loc = cntB[b];
            EB[b][loc][0] = a;
            EB[b][loc][1] = c;
            cntB[b] ++;
        }
        MMF(ansA);
        SPFA(ansA,EA,cntA);
        MMF(ansB);
        SPFA(ansB,EB,cntB);
        int ans = 0;
        for(int i=1;i<=n;i++){
            if(i==s) continue;
            ans = max(ans,ansA[i] + ansB[i]);
        }
        cout<<ans<<endl;
    }
    return 0;
}
结合混合A全局规划与MPC-iLQR执行器噪声和模型不匹配(MATLAB)的差动驱动机器人导航。.zip 1.版本:matlab2014a/2019b/2024b 2.附赠案例数据可直接运行。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。 立即下载

相关推荐

改进差分进化算法及其求解柔性作业车间调度问题(Python代码实现)

内容概要:本文系统探讨了改进差分进化算法在求解柔性作业车间调度问题中的应用,并结合Python代码实现,展示了该算法相较于传统方法在全局搜索能力和收敛速度方面的优势。研究不仅聚焦于算法本身的改进策略,如变异、交叉和选择操作的优化,还深入分析了其在复杂制造环境中应对多目标、多约束调度问题的有效性。文中通过标准测试实例验证了算法性能,并与其他智能优化算法进行了对比分析,体现了其在实际工程应用中的潜力。此外,文档还关联了多无人机路径规划、电力系统状态估计、微电网优化、图像与信号处理等多个前沿技术领域,展现了智能优化算法在跨学科工程仿真与决策支持中的广泛适用性。; 适合人群:具备一定编程基础和工程背景,从事智能制造、自动化、工业工程、电气工程、控制科学与工程、计算机科学及相关领域的科研人员、高校研究生及企业研发技术人员。; 使用场景及目标:①为科研工作者提供可复现的智能优化算法代码框架,支持柔性作业车间调度、多无人机协同路径规划、电力系统优化等复杂工程问题的建模仿真;②辅助完成学术论文复现、课程设计、毕业设计或科研项目开发;③推动智能算法在生产调度、能源管理、交通规划等实际场景中的落地应用。; 阅读建议:建议读者结合文中提供的算法原理与代码实现,动手调试并验证不同参数设置对优化结果的影响,同时可参考荔枝科研社提供的完整资源包进行扩展学习与实践,以加深对算法机制与工程应用的理解。

No.32 - POJ2125 - 关于最小割的割边或割点

简单描述一下题目: 一个有向图,每个点删除入边有个权值,删除出边有另一个权值。则删除所有边最小权值? 所以,一条边有两种删除方式,要么选择起始点删出边,要么选择终止点删入边。显然是求分配方案。 关于分配方案,自然想到网络流,图中拆点,分为入边点,和出边点,这样权值也分离了,原来的边按逻辑连接对应入边点,和出边点。 这里我犹豫了好久,点权怎么处理。 网络流点权是一定要转化成边权的,一般点权有两种处理...

ShellDawn的博客 390

复现基于改进秃鹰算法的微电网群经济优化调度研究(Matlab代码实现)

内容概要:本文聚焦于“基于改进秃鹰算法的微电网群经济优化调度”研究,提出一种改进的秃鹰优化算法(IBOA)以解决传统智能优化算法在求解过程中易陷入局部最优、收敛速度慢等问题。通过引入自适应权重、动态搜索机制及种群多样性保持策略,显著增强了算法的全局搜索能力和收敛精度。研究构建了包含光伏发电、风力发电、储能系统、可控负荷及电网交互的微电网群多主体协同调度模型,以系统综合运行成本最小化为目标函数,综合考虑功率平衡、设备出力能力、储能荷电状态、爬坡速率等多种实际约束条件。利用Matlab平台进行仿真验证,并与标准BOA、PSO、GA等经典智能算法进行对比,结果表明所提算法在降低系统运行成本、提高可再生能源消纳率及优化调度效率方面具有明显优势。; 适合人群:适用于具备电力系统基础、优化理论知识及Matlab编程能力的高校研究生、科研人员及从事微电网、综合能源系统优化调度相关工作的工程技术人员。; 使用场景及目标:①用于微电网群或多微网系统的经济调度建模与仿真;②开展新型智能优化算法的设计、改进与性能评估;③支撑含高比例可再生能源的配电系统优化运行决策; 阅读建议:建议结合提供的Matlab代码深入理解算法实现细节与调度模型构建过程,重点分析改进策略对优化性能的影响,并可通过替换场景参数或引入其他算法进行横向对比实验,进一步掌握智能优化在能源系统中的应用方法。【复现】基于改进秃鹰算法的微电网群经济优化调度研究(Matlab代码实现)

POJ:1737

楼教主男人八题中的第一题: 最大50座不同城市,组成全联通图的数量,不取模。 #include &amp;lt;cstdio&amp;gt; #include &amp;lt;cstring&amp;gt; #include &amp;lt;cmath&amp;gt; #include &amp;lt;string&amp;gt; #include &amp;lt;vector&amp;gt; #define maxn 5

ShellDawn的博客 379

改进-基于新扩展移相角下的双有源桥DAB变换器仿真(EPS调制、软开关、最小应力优化)(Simulink仿真实现)

内容概要:本文系统阐述了基于新扩展移相角的双有源桥(DAB)DC-DC变换器的先进仿真研究,聚焦于EPS调制策略、软开关技术实现及最小应力优化控制目标的协同设计。通过Matlab/Simulink平台构建双闭环控制系统模型,深入剖析变换器在高频隔离、双向功率传输场景下的动态响应特性与效率优化机制。该仿真方案复现了顶级EI期刊研究成果,具备高学术参考价值,并集成于一套完整的电力电子与新能源系统仿真资源体系中,涵盖微电网、PWM整流器、LLC谐振变换器、储能管理等多个关键技术方向,配套完整的仿真代码、设计文档与理论资料,支持深度学习与二次开发; 适合人群:面向电力电子、电气工程及其自动化、新能源科学与工程等领域的研究生、科研人员以及从事高性能DC-DC变换器研发的工程师,要求具备扎实的电路理论基础、电力电子拓扑分析能力及一定的Matlab/Simulink仿真实践经验; 使用场景及目标:①深入掌握DAB变换器的核心工作原理及其在EPS调制与软开关协同下的最优控制策略;②支撑高水平科研论文的复现、改进与创新性研究;③服务于硕士课题、博士研究或企业级新能源变换器产品的前期验证与算法开发; 阅读建议:建议结合文中提供的Simulink模型与引用的权威文献进行系统学习,重点理解控制架构设计、参数整定方法与优化算法实现路径,同时可横向对比其他电力电子变换器案例,拓展系统级工程思维与科研创新能力。

CVE-2017-7921漏洞深度剖析:从身份验证绕过到实战复现与防御

身份验证是Web应用安全的核心防线,其逻辑缺陷可能导致严重的未授权访问。身份验证绕过漏洞的原理在于,应用程序对特定请求路径或API接口的访问控制策略存在疏漏,未能执行有效的会话或令牌校验。这类漏洞的技术价值在于,攻击者无需凭证即可直接访问受保护的后端资源,从而获取敏感信息或执行未授权操作,对系统机密性、完整性构成直接威胁。在物联网和安防监控领域,大量网络摄像头、录像机等设备暴露于公网,其Web管理界面便成为常见攻击面。本文聚焦于安防设备中一个经典的CVE-2017-7921身份验证绕过漏洞,通过剖析其技术原

WGH100817的博客 469

No.9 - POJ2240 Floyd求负权值环路

Floyd求环: // ShellDawn // POJ2240 // No.9 #include<cstdio> #include<algorithm> #include<cstring> #include<queue> #include<iostream> #include<map> #define MM(x) mems...

ShellDawn的博客 352

【AUCell打分】:评估一个基因集在单细胞转录组的每个细胞中特定的活性程度

AUCell使用曲线下面积来计算输入基因集的一个有意义的基因子集是否在每个细胞的表达基因中富集。AUC 分数在所有细胞中的分布允许探索特征的相对表达。由于评分方法是基于排名的,因此 AUCell 与基因表达单位和归一化程序无关。此外,由于细胞是单独评估的,因此可以很容易地应用于更大的数据集。

weixin_40695088的博客 1万+

POJ:1738

楼教主男人八题第二题,5W个叶子节点合并最小费用 最小权费和二叉树:GW算法 #include &amp;lt;cstdio&amp;gt; #include &amp;lt;cstring&amp;gt; using namespace std; #define maxn 50050 #define maxV 1000000001 int S = 1; int L = 0; long long V[maxn]; in...

ShellDawn的博客 351

从爱好者到工程师:如何低成本体验RFSoC ZU47DR?性能实测与避坑指南

本文详细介绍了如何低成本体验赛灵思RFSoC ZU47DR芯片,包括二手开发板选购、租赁服务、精简开发环境搭建等实用方案。通过性能实测与避坑指南,帮助爱好者和工程师在有限预算下充分利用这款集成了ARM处理器和FPGA的高性能芯片,降低开发门槛。

weixin_42525005的博客 214

告别卡顿闪烁!在Cesium 1.134中集成SOG格式,让400万高斯秒级加载

本文详细介绍了如何在Cesium 1.134中集成SOG格式,实现400万高斯数据的秒级加载,解决传统加载方式导致的卡顿和闪烁问题。通过空间索引重构、属性量化编码和WebGPU原生支持等技术,SOG格式显著提升了三维地理空间可视化的性能。文章还提供了环境准备、模型转换和Cesium集成的实战指南,帮助开发者高效优化项目。

weixin_29313817的博客 498

No.30 - POJ1325 - 匈牙利算法

首先题目是求二部图的最小点覆盖集。 最小点覆盖:\red{最小点覆盖:}最小点覆盖:取最少的点使图没有孤立边 有个转化定理:二部图\green{二部图}二部图 的 最小点覆盖集\blue{最小点覆盖集}最小点覆盖集 = 最大匹配\blue{最大匹配}最大匹配 很好理解,倘若最小点覆盖集之外,还有一对儿匹配,则该边是孤立边,该边中点任意一点应该划入最小点覆盖集。 相反,若最大匹配所包含的点之外,还有...

ShellDawn的博客 327

人工智能在高中教育中的应用现状剖析与挑战应对

人工智能在高中教育中的应用现状剖析与挑战应对

燕鹏 1338

POJ:1523

找关节点及其联通分量: Tarjan算法: /* Author:ShellDawn Date:2019-07-09 */ //#include<bits/stdc++.h> #include<cstdio> #include<cstring> #include<algorithm> using namespace std; #define long ...

ShellDawn的博客 321

金融科技风险管理实践之监管评级全解

内部审计是公司治理的四大基石之一。因此,建议银行以问题与结果为导向,推动科技风险分级分类管理,重点防范重大中断、重大事件,并进一步加强科技风险评估与监测,加强对重要管理流程、重要系统、网络等重点管控环节的评估监测,对于评估发现的问题,及时完善管理手段,举一反三解决问题,提高风险管理的有效性。投入更多审计资源,加大对重点机构、薄弱环节、重要领域的审计力度,如:加强对境外机构的审计,加强网络安全、数据安全、业务连续性等高风险领域审计,加强数字化转型过程中的风险审计,以高水平安全,为数字金融高质量发展保驾护航。

银行信息系统应用架构详解 450

YOLO26涨点改进 | 损失函数改进篇 | 引入SlideLoss,适配尺度变化+遮挡+难易样本不平衡,手把手配置+实战案例

COCO-Hard是COCO数据集的复杂场景子集,包含80个类别,重点筛选多尺度、遮挡密集样本,其中小尺度目标(<32×32像素)占比42%,大尺度目标(>128×128像素)占比28%,遮挡目标占比57%,场景涵盖人群密集、车流拥堵、复杂工业环境,完美模拟真实复杂检测场景,适合验证SlideLoss的适配性。

qq_36130719的博客 157

No.18 - POJ1386 判断联通 找欧拉链

首先判断是否为联通图 非联通图谈不上欧拉回路\red{非联通图谈不上欧拉回路}非联通图谈不上欧拉回路 欧拉链: 起始点,出度比入度多1 终止点,出度比入度少1 其他点,出度等于入度,所以出度加入度是偶数,满足欧拉回路规律。 cin&gt;&gt;string非常慢,字符串读取还是scanf(&quot;%s&quot;)大法好\orange{cin&gt;&...

ShellDawn的博客 321

【高级强化学习:算法、优化与泛化】第13章 扩散模型策略优化(Diffusion Policy Optimization)

\quad$ 计算均值 $\mu_t = \frac{1}{\sqrt{\alpha_t}} \left( x_t - \frac{1 - \alpha_t}{\sqrt{1 - \bar{\alpha}_t}} \tilde{\epsilon} \right)$.$\quad$ 组合得分估计: $\tilde{\epsilon} = \epsilon_{\text{unc}} + w \cdot (\epsilon_{\text{con}} - \epsilon_{\text{unc}})$.

u012133341的博客 337

No.20 - POJ1780 咬尾蛇规律的数字排列

这是固定规律 n位首位相接组成n+10^n-1个数 则, 以n-1个0开始 以n-1个0结束 直接用dfs搜索,扩展,若扩展失败,一定是因为0,直接以1扩展即可。 // ShellDawn // POJ1780 // No.20 #include<cstdio> #include<iostream> #include<cstring> #include&l...

ShellDawn的博客 318

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

No.7 - POJ1679 克鲁斯卡尔 等权边 判断 MST唯一

kruskal判断MST唯一: 需要另外三个标记,k代表是否重边,u代表是否第一次使用,d代表删除该边 // ShellDawn // POJ1679 // No.7 #include<cstdio> #include<algorithm> #include<iostream> #include<cstring> #define MM(x) mem...

ShellDawn的博客 295

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

No.25 - POJ3308 实数网络流

构造图是关键 一个兵有两种耗费模式,要么Ri开销,要么Cj开销 自然想到源点到中间节点为Ri开销,中间节点到汇点为Cj开销,求最小割。 兵的关系如何表示? 伞兵没有带权值,所以只表示一种行和列的关联关系,所以想到中间节点分为Ri和Cj,每个伞兵链接Ri和Cj,正向边费用为INF,反向边费用为0。 关于反向边为什么为0\red{关于反向边为什么为0}关于反向边为什么为0:反向边的作用是修正之前伞兵的...

ShellDawn的博客 281

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

No.33 - POJ1523 邻接表Tarjan算法 找关节点

Tarjan算法核心: void dfs(int now,int v){ V[now] = low[now] = v; for(int i=pre[now];i!=0;i=E[i].pre){ if(V[E[i].to] == 0){ dfs(E[i].to,v+1); low[now] = min(low[now],...

ShellDawn的博客 280

No.16 - POJ1149 猪圈与顾客的匹配 最大流

最大流: 新增源点0,汇点N+1 从源点发出m条边,每条边容量为猪圈m的存货, 然后m条边依次流经每个有对应猪圈钥匙的顾客,顾客之间连边为INF, 若不同猪圈流经同一个顾客,则边权相加。 这些边代表猪圈存货的限制。 从每个顾客发出一条边指向汇点,边权为顾客需求。 这些边代表顾客需求的限制。 此时,在这张图上最大流即可。 // ShellDawn // POJ1149 // No.16 #incl...

ShellDawn的博客 275

No.19 - POJ1201 差分约束 多个不等式约束 50000个点

Bellman-Ford求差分约束。 cin超时,scanf才200ms,能用scanf不用cin\red{cin超时,scanf才200ms,能用scanf不用cin}cin超时,scanf才200ms,能用scanf不用cin // ShellDawn // POJ1201 // No.19 #include<cstdio> #include<algorithm> #...

ShellDawn的博客 266

No.14 - POJ2263 迪杰斯塔拉 求路径最大承重

Dijsktra + 贪心: // ShellDawn // POJ2263 // No.14 #include<algorithm> #include<cstring> #include<iostream> #include<map> #include<cstdio> #define MM(x) memset(x,0,sizeof(x...

ShellDawn的博客 263

No.26 - POJ1815 最小割点

网络流求最小割点,每个点分裂为入点和出点,边权为1 注:S,T分裂为边权为INF的两个点 出点到其它入点边权为INF // ShellDawn // POJ1815 // No.26 #include<stdio.h> #include<string.h> #include<algorithm> #include<queue> #define MM...

ShellDawn的博客 261
上一篇: No.10 - POJ1556 计算几何 判断点在直线
下一篇: No.12 - POJ3259 SPFA求负权值回路 比Floyd快
ShellDawn
博客等级 码龄10年 75粉丝 756原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值