C语言-蓝桥杯-路径

2023-11-09

题目

小蓝学习了最短路径之后特别高兴,他定义了一个特别的图,希望找到图 中的最短路径。

小蓝的图由 2021 个结点组成,依次编号 1 至 2021。

对于两个不同的结点 a, b,如果 a 和 b 的差的绝对值大于 21,则两个结点 之间没有边相连;如果 a 和 b 的差的绝对值小于等于 21,则两个点之间有一条 长度为 a 和 b 的最小公倍数的无向边相连。

例如:结点 1 和结点 23 之间没有边相连;结点 3 和结点 24 之间有一条无 向边,长度为 24;结点 15 和结点 25 之间有一条无向边,长度为 75。

请计算,结点 1 和结点 2021 之间的最短路径长度是多少。

思路

采用Floyd算法,三重循环寻找最短路径。

代码

#include<stdio.h>
const int maxn = 3000;
const long long INF = 1e18; 
long long mp[maxn][maxn];
int gcd(int a,int b)
{
	if(b==0)
		return a;
	else
		return gcd(b,a%b);
}
void floyd(int n)
{
	for(int k = 1;k <= n;k++){
        for(int i = 1;i <= n;i++){
            for(int j = 1;j <= n;j++){
                mp[i][j] = mp[i][j] <( mp[i][k] + mp[k][j])? mp[i][j]: (mp[i][k] + mp[k][j]);
            }
        }
    }
}
int main()
{	
	int n=2021;
	for(int i=1;i<=n;i++)
	{
		for(int j=1;j<=n;j++)
		{
			if(i==j)
				mp[i][j]=0;
			else if((i>j?i-j:j-i)<=21)
			{
				mp[i][j] = mp[j][i] = i * j / gcd(i, j);
			}
			else
				mp[i][j]=INF;
		}
	}
	floyd(n);
	printf("%lld",mp[1][2021]);
	return 0;
}

结果

在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C语言-蓝桥杯-路径 的相关文章

随机推荐

  • 搭建并部署Vue3+TypeScript+Vite+ElementPlus项目

    目录 前言 一 搭建Vue3项目 1 安装yarn命令 2 创建VUE项目 3 安装VUE依赖 4 启动VUE项目 5 访问VUE项目 6 打包VUE项目 带项目名 7 部署VUE项目 二 使用Visual Studio Code管理vue
  • CVPR2023 语义分割论文合集

    国际计算机视觉与模式识别会议 CVPR 是计算机科学领域中的顶级会议之一 也是图像处理 机器学习 人工智能等多个领域的交叉学科会议 每年的CVPR会议都会有大量的论文投稿和学术交流活动 其中涵盖了包括图像处理 计算机视觉 模式识别 机器学习
  • STM32 USBH CDC开发及应用

    USB 是英文 Universal Serial BUS 通用串行总线 的缩写 其是一个外部总线标准 用于规范USB主机与外部设备的连接和通讯 由于项目需要 需要开发基于STM32 USB主机 HOST 的CDC的开发 用于编队表演系统中底
  • 【软件测试7】web自动化测试——12306购票实战

    web自动化测试 12306购票实战 一 自动化购票流程 登录 进入购票 填写信息 选择车次 预定 选择购票人 二 自动化环境配置 软件环境 Python selenium Python安装 Python Pycharm安装 seleniu
  • ECS云服务器2核4g够用吗?

    够不够用要看具体的需求 一般来说这个算是入门或者是入门以上的配置吧 满足我们一般个人用户大部分的建站需求 够不够用需要结合建站需求来考虑的 一般来说这个配置的阿里云服务器基本可以满足我们大部分个人和小微企业的建站需求了 我们除非是大型网站建
  • [生产力]VSCode必备插件-C/C++开发

    文章目录 1 C C for Visual Studio Code 2 C Intellisense 3 Git Graph 4 compareit 5 TODO Highlight 6 Bookmarks 7 Markdown All i
  • LLVM系列第一章:编译LLVM源码

    系列文章目录 LLVM系列第一章 编译LLVM源码 LLVM系列第二章 模块Module LLVM系列第三章 函数Function LLVM系列第四章 逻辑代码块Block LLVM系列第五章 全局变量Global Variable LLV
  • [CSDN] 批量导出博客markdown文件

    需求 为了备份或者迁移博客 需要导出博客的md格式文件 除了 爬虫 自带导出功能 编辑模式 ctrl c ctrl v 之外还有一种十分方便的方法 一行命令导出法 方法 进入 404页面 https blog console api csd
  • 自旋锁与读写锁

    1 读写锁 读写锁与互斥量类似 但是读写锁允许更高的并行性 互斥量要么是锁住多个要么是未锁住状态 而且一次只有一个线程可以对其加锁 读写锁可以有三种状态 读模式写加锁状态 写模式写加锁状态 不加锁状态 一次只有一个线程可以占有写模式下的读写
  • 四家中国企业上榜、AI 开发工具崛起,CB Insights 2022 年度 AI 100 全球榜单发布!...

    整理 郑丽媛 出品 CSDN ID CSDNnews 近日 全球知名市场数据分析机构 CB Insights 最新公布了 2022 年度 AI 100 榜单 自 2017 年起 CB Insights 每年都会发布 AI 100 榜单 在全
  • yum安装mysql 8.0

    一 安装mysql 8 0 yum源 cd etc yum repos d curl https repo mysql com mysql80 community release el7 3 noarch rpm gt centos7 my
  • 黄淮学院CSDN高校俱乐部李神龙主席发来的新年礼物感恩帖

    下午刚收到俱乐部总部给我发的礼物 心里甜甜的 先展示一下 嘿嘿 表示下半学年一定要好好工作 要不就对不起天山经理 姚希姐 付菁姐还有仲伟哥给的评语了 新的一年祝天山经理升官发财 姚希付菁姐美貌如花 仲伟哥英明神武 CSDN高校俱乐部一家人亲
  • Spring Cloud之Eureka集群与安全认证

    文章目录 前言 一 Eureka集群 1 修改配置文件为application replica1 properties 2 新增配置文件application replica2 properties 3 分别使用两个配置文件启动同一eure
  • 基本数据类型与引用数据类型的区别

    一 数据类型 java中的数据类型分为两大类 基本数据类型与引用数据类型 1 基本数据类型 基本数据类型只有8种 可按照如下分类 整数类型 long int short byte 浮点类型 float double 字符类型 char 因为
  • 拳王公社:最新虚拟资源项目赚钱成交系统,1.2W字干货大揭秘!

    小白如何快速利用虚拟资源赚到钱 本文篇幅较长 要赚钱 请耐心读完 一 选择好项目的5大要素 现在是互联网时代 信息差就是利润差 网络小白 新手找副业难 没方向 找不到好项目成为了问题 小白找副业或兼职最担心的就是承担大量资金投入 承担不明确
  • A - Odd Palindrome (回文串)

    A Odd Palindromehttps vjudge csgrandeur cn problem Gym 101652N include
  • Dom详细讲解

    1 Dom的基本介绍 1 1 什么是DOM 文档对象模型 英文全称为Document Object Model 它提供了对文档的结构化的表述 并定义了一种方式可以使从程序中对该结构进行访问 从而改变文档的结构 样式和内容 D Documen
  • pytorch环境搭建,pytorch超详细最新安装教程(一步到位)

    PyTorch是深度学习的主流框架之一 新手入门相对容易 PyTorch是一个开源的Python机器学习库 其前身是2002年诞生于纽约大学 的Torch 它是美国Facebook公司使用python语言开发的一个深度学习的框架 2017年
  • [转]element中this.$message 失效问题解决方法(使用全局调用,重新定义this)(转载请删除括号里的内容)

    这两天写项目的时候发现了这个问题 问题再现 在Model框中操作数据 在使用this message进行消息提示时发现 提示框失效 本人解决方案 具体原因我没有找出来 写这个出来也是为了让大佬指点指点 保存修改数据 handleSaveMu
  • C语言-蓝桥杯-路径

    题目 小蓝学习了最短路径之后特别高兴 他定义了一个特别的图 希望找到图 中的最短路径 小蓝的图由 2021 个结点组成 依次编号 1 至 2021 对于两个不同的结点 a b 如果 a 和 b 的差的绝对值大于 21 则两个结点 之间没有边