【Floyd求无向图的最小环】PKU-1734-Sightseeing trip

【代码超详解】HDU 1599 find the mincost route(Floyd 算法求无向图的最小环 · 模板题) 一、题目描述 Problem Description 杭州有N个景区,景区之间有一些双向的路来连接,现在8600想找一条旅游路线,这个路线从A点出发并且最后回到A点,假设经过的路线为V1,V2,…VK,V1,那么必须满足K>2,就是说至除了出发点以外至少要经过2个其他不同的景区,而且不能重复经过同一个景区。现在8600需要你帮他找一条这样的路线,并且花费越少越好。 Input 第一行是2个整... 阅读详情

Floyd算法就是通过n次枚举中间点k来使i到j的距离松弛为最短,而本题就是在枚举k的时候找环,具体思路见代码!

题目

#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
#define inf 999999
#define N 105
int n,len,ans,map[N][N],dis[N][N],post[N][N],path[N];
void floyd()
{
    for(int k=1;k<=n;k++)
    {
        for(int i=1;i<=n;i++)
        {
            for(int j=1;j<=n;j++)
            {
                if(i==k||j==k||i==j)continue;
                if(ans>dis[i][j]+map[j][k]+map[k][i])              //这里就是找环的过程,因为当前的k点还没出现在i到j的最短路径中,所以k可以出现在连接i到j形成环的另一条边中
                {
                    ans=dis[i][j]+map[j][k]+map[k][i];
                    len=0;
                    int t=i;
                    path[len++]=t;              //记录路径
                    while(post[t][j]!=j)
                    {
                        t=post[t][j];
                        path[len++]=t;
                    }
                    path[len++]=j;
                    path[len++]=k;
                }
            }
        }
        for(int i=1;i<=n;i++)
        {
            for(int j=1;j<=n;j++)
            {
                if(dis[i][j]>dis[i][k]+dis[k][j])              //Floyd求最短路
                {
                    dis[i][j]=dis[i][k]+dis[k][j];
                    post[i][j]=post[i][k];              //更新路径
                }
            }
        }
    }
}
int main()
{
    //freopen("a.txt","r",stdin);
    int m;
    scanf("%d%d",&n,&m);
    for(int i=1;i<=n;i++)
    {
        for(int j=1;j<=n;j++)
        {
            map[i][j]=dis[i][j]=inf;
            post[i][j]=j;              //post[i][j]记录的是i到j的最短路径中i的下一点
        }
    }
    while(m--)
    {
        int l,x,y;
        scanf("%d%d%d",&x,&y,&l);
        if(map[x][y]>l)
        {
            map[x][y]=map[y][x]=l;
            dis[x][y]=dis[y][x]=l;
        }
    }
    ans=inf;
    floyd();
    if(ans==inf)printf("No solution.");
    for(int i=0;i<len;i++)
    {
        if(i)printf(" ");
        printf("%d",path[i]);
    }
    printf("\n");
    return 0;
}


5个4000比特大状态置换算法的设计与分析 下面是 5 个概念性、实验性的 4000 位可逆置换设计。它们都保证是双射,但未经过密码分析,不可直接用于生产系统。风格分别覆盖:三维 SPN、Feistel、可逆元胞自动机、ARX、宽轨迹/Keccak 式结构。 这 5 个设计分别代表了 SPN、Feistel、元胞自动机、ARX、宽轨迹 Keccak 五种不同风格,覆盖了主流大状态置换的构造思路。再次强调:它们只是实验性概念,若要用于实际协议,必须经过严格安全性分析。 阅读详情

相关推荐

(一)ANSYS WORKBENCH实践入门

ANSYS-workbench 有限元分析应用基础教程 (张晔)学习笔记

qq_51767372的博客 1万+

floyd求无向图最小环——poj1734

给定一个无向图,求出图中由 3个及以上个点构成的环的边权和 中的最小值。(一个点不能遍历多次)在floyd时,先循环k,然后是i和j,你会发现在每次进入一个新的k循环时,每一个d(i,j)都保存着从i到j,只经历了编号不超过k-1的节点的最短路、于是,min{d(i,j)+ a(j,k)+ a(k,i)}  (1≤i<j<k)就是满足以下性质的最小环:由编号不超过k的节点构成且必定经过节点k。(式...

呆头呆脑没有烦恼 1024

红外热成像仪原理及应用

目录什么是红外热成像背景介绍热成像技术原理热成像分类红外热成像和夜视仪之间的区别红外热像仪夜视仪红外照明相机对比红外热像仪都能看透什么如何选择制冷型和非制冷型红外热像仪制冷型红外热像仪非制冷型红外热像仪实例对比成像速度空间分辨率灵敏度光谱滤波同步何如选择合适的红外热像仪像素测温范围和被测物温度分辨率空间分辨率温度稳定性热像仪的距离系数比常见热成像仪关键参数量程视场角 (FOV)红外分辨率热灵敏度(NETD)焦距光谱范围精度内置优化分析NTED(热灵敏度)什么是NETD如何测量NETD?NETD如何影响测量?

zhy295006359的博客 2万+

Floyd算法求无向图最小环

There is a travel agency in Adelton town on Zanzibar island. It has decided to offer its clients, besides many other attractions, sightseeing the town. To earn as much as possible from this attraction, the agency has accepted a shrewd decision: it is neces

yo_bc的博客 6618

边缘AI硬件风向:从专用芯片到端侧大模型

边缘AI硬件正呈现五大发展趋势:专用AI加速芯片(如华为昇腾、谷歌EdgeTPU)凭借高能效比成为主流;端侧大模型催生支持Transformer架构的新硬件需求;存算一体技术突破内存墙限制;FPGA和可重构计算提供灵活性;异构集成与Chiplet技术实现模块化设计。这些发展需要配套软件工具链支持,未来边缘设备将演变成具备本地智能的"智能体",竞争焦点转向算力、能效、易用性和成本的多维平衡。

qq_37027335的博客 348

读取rosbag中的IMU信息并转为tum格式的csv和txt

rostopic -b xx.bag -p /xx > xxx.txt #for euroc structvio import os, sys,re,csv name="street_07" # basedir="/media/yinjie/2498AF1F98AEEF0C/adataset/15results/imu_bagtxt/"+name+'.txt' # txtdir="/media/yinjie/2498AF1F98AEEF0C//adataset/15results/imu_o

qq_42928559的博客 1919

P6175 无向图的最小环问题(Floyd算法求最小的环的边权和)

题目描述 给定一张无向图,求图中一个至少包含 33 个点的环,环上的节点不重复,并且环上的边的长度之和最小。该问题称为无向图的最小环问题。在本题中,你需要输出最小的环的边权和。若无解,输出 No solution.。 输入格式 第一行两个正整数 n,mn,m 表示点数和边数。 接下来 mm 行,每行三个正整数 u,v,du,v,d,表示节点 u,vu,v 之间有一条长度为 dd 的边。 输出格式 输出边权和最小的环的边权和。若无解,输出 No solution.。 输入输出样例 输入 #1 复制 5 7 1

qq_26139541的博客 528

大数据课程综合实验案例:网站用户行为分析

大数据课程综合实验案例1 案例简介1.1 案例目的1.2 适用对象1.3 时间安排1.4 预备知识1.5 硬件要求1.6 软件工具1.7 数据集1.8 案例任务1.9 实验步骤2 本地数据上传到数据仓库Hive2.1 实验数据集的下载2.2 数据集的预处理(1)删除文件第一行记录,即字段名称(2)对字段进行预处理(3)导入数据库3 Hive数据分析3.1 操作Hive3.2 简单查询分析3.3 查询条数统计分析3.4 关键字条件查询分析3.4.1 以关键字的存在区间为条件的查询3.4.2 关键字赋予给定值为

weixin_44616879的博客 1万+

12.3日+佛洛依德处理无向图最小环+dijkstra处理有向图最小环

  昨天的数据库考试,题目本身都简单的,但是感觉时间有点紧张,可能和自己有点墨迹有关。题目不怕不会做,就怕读错题,上了大学养成了考试“做完一遍要检查的坏习惯”,这次没时间检查,所以有种做的不好的感觉。       弗洛伊德算法是运用的动态规划的思想。常用于求图中任意两点间的最短路,同时也能表示任一两点之间是否有可达关系。   用该算法的思想还可以求无向图中的“最小”环。 例如poj1743...

又菜又爱玩 600

FOC观测器之龙伯格观测器

状态观测器: 理论依据:根据控制理论,如果一个系统能够完全通过其检测到的输出值来重构其系统状态,则认为该系统是可观测的。其作用于无传感器转子的位置和速度的检测反馈,再作用到PARK逆变换和转矩磁链控制上。 Luenberger观察器原理图: Luenberger观测器的离散化: (其观测器的闭环参数为经验验证值) 引入估测电流( iα,iβ )的反馈值并离散化(T 为采样时间),可得...

ShawnChan的博客 2万+

AI Agent开发第82课-手把手教你把paddleocr-vl做成mcp使其在DIFY里运行

本文详解如何将国产顶尖多模态 OCR 模型 PaddleOCR-VL 封装为标准 MCP(Model Calling Protocol)服务,并通过自研的 HTTP-based MCP Client 接入 Dify 1.10,实现 AI Agent 在对话中自动识别并调用 OCR 能力。该方案已在某头部保险公司真实业务流程中落地,使用了当前最先进的“Agentic AI 原生”设计思想。

打造全国最全的AI Agent开发知识领域的博客 1625

pku 1734 Sightseeing trip floyd求最小环

http://poj.org/problem?id=1734 题意: 给定一张图,n个点m条无向边(存在重边)。求该图的最小环(边权和最小) 注意此环满足展开的路径v1,v2,v3...v1中出了v1之外其他的点都必须不同,业绩不会存在1 2 3 3 2 1这样的环 思路: 1:朴素的求最小环的方法做E遍Dijkstra,枚举每条边e(i,j),删去边e(i,j)之后,求i到j的最短路经,...

weixin_30436101的博客 91

C++和OpenGL实现3D游戏编程【连载7】——文字和汉字的显示(附源码)

上一节我们讨论了纹理在二维平面内不规则图形贴图的相关基础操作,本节我们开始了解游戏里文字以及汉字的显示方法。本节课我们将从基本的ASCII字符显示,拓展到中文字符的显示,最后再讲到纹理字符的显示,并对各种文字显示方法的优缺点和使用场景进行分析,这节课将使用到显示列表、兼容视图、屏幕图形转纹理等操作。

zhooyu的博客 1498

【双连通分量(tarjan)+树形dp】HDU-2242-考研路茫茫——空调教室

重拾tarjan第一题,不过这题还要用到树形dp……所以是一道很好的综合简单题…… 题目 #include #include #include #include using namespace std; template T Max(T x,T y){return x>y?x:y;} template T Min(T x,T y){return x<y?x:y;} #define N 10

AndRing的专栏 2441

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

【Havel-Hakimi定理】PKU-1659-Frogs' Neighborhood

1,Havel-Hakimi定理主要用来判定一个给定的序列是否是可图的。 2,首先介绍一下度序列:若把图 G 所有顶点的度数排成一个序列 S,则称 S 为图 G 的度序列。 3,一个非负整数组成的有限序列如果是某个无向图的序列,则称该序列是可图的。 4,判定过程:(1)对当前数列排序,使其呈递减,(2)从S【2】开始对其后S【1】个数字-1,(3)一直循环直到当前序列出现负数(即不是可图的情

AndRing的专栏 962

Statistics and Machine Learning Toolbox

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

【tarjan求割边】PKU-3694-Network

先给出一个图,然后一次增加一些边,问在每条边增加后桥的数目是多少……因为是刚刚接触有关割的知识不久,所以都是模范人家的代码的,而且网上都是最朴素的代码,加上自己的水,所以时限5000ms的题跑出了3000+ms,真是悲剧啊! 题目 #include #include #include #include using namespace std; #define N 100005 vector

AndRing的专栏 957

OV9734 DATASHEET,完整规格书

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

【tarjan算法求割点】PKU-1523-SPF

其实题目的数据不够规范,因为它的点可能不连续,而且数据里面一定有根节点1,这个在题目里体现不了! 题目 #include #include #include #include #include using namespace std; #define N 1005 vector vec[N]; int step,low[N],dfn[N],blg[N]; void add(int x,int

AndRing的专栏 925

【tarjan求双连通分量】PKU-3177&3352

PKU上几乎一模一样的两道题,都是用tarjan来求双连通分量,唯一不同的就是3177会有重边的情况,而3352不会有,所以在加了判断重边之后的代码在两题提交都能过。 题目: 3177 3323 大神题解:点击打开链接 #include #include #include #include using namespace std; #define N 5005 vector

AndRing的专栏 717

【Floyd求最短路+快速幂】PKU-3613-Cow Relays

这题很好的综合了图论和数论的知识来解题,这种转化综合的思维我要好好地加强训练才行……其实这里明白到一点就可以很好地知道它们之间是怎么转化的,当map[i][j]表示i到j的最短路径,map[j][k]表示j到k的最短路径,且是经过n条路时,那么i到k的最短距离且经过2*n条路就一定是map[i][j]+map[j][k]了! 题目 #include #include #include

AndRing的专栏 635

【综合图论】PKU-2942-Knights of the Round Table

综合性很强的一道图论题,用到了补图,双连通分量,二分图等几个知识点,这里有某位大牛的神解题报告点击打开链接。 题目 #include #include #include #include #include using namespace std; #define N 1005 vector vec[N],lin[N]; stack sta; int n,step,cnt,ans,low[N

AndRing的专栏 567

视频隐私脱敏工程化:CSRT/KCF追踪算法在本地推理中的实现与边界

在短视频内容合规审查中,动态遮挡(Dynamic Masking)是高频且高耗时的环节。传统手动关键帧打码不仅效率低下,且在目标快速移动或遮挡时极易出现遮罩漂移。本文从计算机视觉工程角度,解析基于CSRT与KCF算法的目标追踪方案在视频隐私处理中的技术路径、性能权衡及落地实践。

Mysssone的博客 196

【算法拾光】链表 哈希表|K个一组翻转链表 + 两数之和

K个一组翻转链表需分段反转,借助哑节点与前驱指针维护连接,避免断链;两数之和利用哈希表实现O(1)查找,空间换时间,高效定位目标组合。前者考察链表指针操作,后者聚焦映射关系构建,均为面试高频题。

wuqingyigexiaoba的博客 302

排序算法深度笔记(下):非比较类排序的线性突破与工程边界

排序算法时间复杂度额外空间复杂度稳定性是否基于比较选择排序O(N^2)(O(1))不稳定是冒泡排序O(N^2)(O(1))稳定是插入排序O(N^2)(O(1))稳定是归并排序O(N\log N)(O(N))稳定是快速排序O(N\log N)O(log N)不稳定是堆排序O(N\log N)O(1)不稳定是计数排序(O(N + M))O(M))稳定否基数排序O(N)稳定否桶排序平均O(N) / 最坏O(N^2)

2401_87069538的博客 567
上一篇: 【dp】HUST-1351-Group
下一篇: 【数论】HDU-4196-Remoteland
AndRing
博客等级 码龄15年 5粉丝 44原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值