5.7代码

1.环境治理

 

分析:最开始进入了一个误区,觉得都有通路了直接算通路就可以,后来才发现居然是最小路径的总和,所以大概是每减一次都要算一次各点之间的最小路径了,然后是循环,到需要的条件为止

总的来说思路不算难,但是写起来非常的 麻烦,调试的时候写了很多的输出

#include <bits/stdc++.h>using namespace std;main() {long long m,n,i,j,k,c,d,e,f,ans=0,ans0,ans1;cin>>n>>m;long long a[n][n],l[n][n],dp[n][n];//接收收据 for(i=0; i<n; i++) {for(j=0; j<n; j++){cin>>a[i][j];dp[i][j]=a[i][j];}}for(i=0; i<n; i++) {for(j=0; j<n; j++)cin>>l[i][j];}for(i=0; i<n; i++) {for(j=0; j<n; j++) {cout<<l[i][j]<<" ";}cout<<endl;}//最短路径 for(i=0; i<n; i++) {for(j=0; j<n; j++) {for(k=0; k<n; k++) {dp[i][j]=min(dp[i][j],dp[i][k]+dp[k][j]);}}}//剪枝 ans=0;ans1=0;for(i=0; i<n; i++) {for(j=0; j<n; j++) {ans+=dp[i][j];ans1+=l[i][j];}}//输出 for(i=0; i<n; i++) {for(j=0; j<n; j++) {cout<<dp[i][j]<<" ";}cout<<endl;}cout<<ans<<" "<<ans1<<endl;if(ans<=m) {cout<<0;return 0;}if(ans1>m) {cout<<-1;return 0;}//查天数+最短路径+剪枝 for(c=0;; c++) {//更新数据 f=c%n;for(i=0; i<n;i++) {if(a[i][f]>l[i][f]) a[i][f]-=1;if(a[f][i]>l[f][i]) a[f][i]-=1;}for(i=0; i<n; i++) {for(j=0; j<n; j++){dp[i][j]=a[i][j];}}ans=0;//最短路径 for(i=0; i<n; i++) {for(j=0; j<n; j++) {for(k=0; k<n; k++) {dp[i][j]=min(dp[i][j],dp[i][k]+dp[k][j]);}}}cout<<"//"<<endl;for(i=0; i<n; i++) {for(j=0; j<n; j++) {cout<<dp[i][j]<<" ";}cout<<endl;}ans=0;for(i=0; i<n; i++) {for(j=0; j<n; j++) {ans+=dp[i][j];}}cout<<ans<<endl;if(ans<=m) {cout<<c+1;return 0;}}return 0;
}
/*
3 10
0 2 4
2 0 1
4 1 0
0 2 2
2 0 0
2 0 0
*/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/674842.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[leetcode] 67. 二进制求和

文章目录 题目描述解题方法模拟java代码复杂度分析 相似题目 题目描述 给你两个二进制字符串 a 和 b &#xff0c;以二进制字符串的形式返回它们的和。 示例 1&#xff1a; 输入:a "11", b "1" 输出&#xff1a;"100"示例 2&#xff1a; 输…

使用curl命令查看服务器端口开放情况

目录 1.ssh端口 22 2.mysql数据库端口 3306 3.web应用端口 &#xff08;Jellyfin 8082&#xff09; &#xff08;wordpress 8088&#xff09; &#xff08;tomcat 8080&#xff09; 4.不存在的端口 5.被防火墙阻挡的端口 1.ssh端口 22 curl -v 10.10.10.205:22 curl…

SpringBoot+Vue+Element-UI实现在线外卖系统

前言介绍 随着科学技术的飞速发展&#xff0c;各行各业都在努力与现代先进技术接轨&#xff0c;通过科技手段提高自身的优势社会的发展和科学技术的进步&#xff0c;互联网技术越来越受欢迎。网络计算机的生活方式逐渐受到广大人民群众的喜爱&#xff0c;也逐渐进入了每个用户的…

java:递归实现的案例

//求第20个月兔子的对数 //每个月兔子对数&#xff1a;1&#xff0c;1&#xff0c;2&#xff0c;3&#xff0c;5&#xff0c;8 public class Test {//求第20个月兔子的对数//每个月兔子对数&#xff1a;1&#xff0c;1&#xff0c;2&#xff0c;3&#xff0c;5&#xff0c;8pu…

cmake进阶:目录属性说明一

一. 简介 接下来简单学习一下 cmake 中的属性相关的概念。 属性大概可以分为多种&#xff1a;全局属性、目录属性&#xff08;源码属性&#xff09;、目标属性以及其它一些分类。 二. cmake进阶&#xff1a;目录属性 cmake中的属性可以 在如下网址查询到&#xff1a; http…

Candance画运算放大器

根据拉扎维《模拟CMOS集成电路设计》第九章第一个放大器进行搭建电路图。 此电路图中两个NMOS栅极互联是因为NMOS的衬底要接片上最低电压。所以要两个互联并接到最低点。 因为两条支路上的器件都是一样的&#xff0c;所以这两条路平分idc的直流电流。 测试的时候要加上下图这两…

2022 年全国职业院校技能大赛高职组云计算赛项试卷(私有云)

#需要资源&#xff08;软件包及镜像&#xff09;或有问题的&#xff0c;可私聊博主&#xff01;&#xff01;&#xff01; #需要资源&#xff08;软件包及镜像&#xff09;或有问题的&#xff0c;可私聊博主&#xff01;&#xff01;&#xff01; #需要资源&#xff08;软件包…

Origin拟合EIS(电化学阻抗谱),怎么出来圆圈

1.先导入数据&#xff0c;以点图的形式画出来 2.重要的一步Fitting&#xff0c;按照我这个一步一步来就行 3.将其中的Function选择为Elipse&#xff0c;然后点拟合至最佳条件 4.第三步做完就会发现圆圈已经出来了&#xff0c;然后点OK就行 5.搞定

从0到1提审苹果商店(appstore)上线一款新APP

本篇主要复盘和介绍一款APP如何从0到1上线到苹果商店,将我自己项目遇到的坑跟大家分享,希望能为同样做开发或者运营的你提供经验,少走弯路。 如果你是24年1月1日之后开始首次提审APP,还需要先将自己的APP在工信部备案,苹果后台增加了工信部备案号的填写,备案方法和经验如…

【PCIE】基于PCIE4C的数据传输(四)——使用MSIX中断

基于PCIE4C的数据传输&#xff08;三&#xff09;——遗留中断与MSI中断 一文介绍了遗留中断与MSI中断两种中断方式的代码实现&#xff0c;本文继续基于Xilinx UltrascaleHBM VCU128开发板与linux&#xff08;RHEL8.9&#xff09;&#xff0c;介绍MSIX中断方式的代码实现。本文…

Gradio之blocks灵活搭建页面

这里写目录标题 搭建一个UI界面搭建上半部分的框架比例调节以及其他效果搭建下半部分左边部分搭建下半部分右边部分拓展-CSS的应用 使用标签搭建第二个页面示例 补充AccordionGroup() 搭建一个UI界面 搭建上半部分的框架 如下图&#xff0c;我们想要基本还原下图右边的UI界面…

[redis] 说一说 redis 的底层数据结构

Redis有动态字符串(sds)、链表(list)、字典(ht)、跳跃表(skiplist)、整数集合(intset)、压缩列表(ziplist) 等底层数据结构。 Redis并没有使用这些数据结构来直接实现键值对数据库&#xff0c;而是基于这些数据结构创建了一个对象系统&#xff0c;来表示所有的key-value。 文章…