NOIP游记_广州文化之旅

NOIP游记_广州文化之旅这道题最初博主理解错误,误以为学了某种文化就不能到排斥这种文化的地方去(明明也是这样写的好吧),实际上只用判断到达的国家是否排斥现在所在国家的文化,那就简单多了,Floyd走起,下面是代码:#include<stdio.h>usingnamespacestd;constintMAX=999999;constintMAXN=105;intn,k…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

这里写图片描述

  • 这道题最初博主理解错误,误以为学了某种文化就不能到排斥这种文化的地方去(明明也是这样写的好吧),实际上只用判断到达的国家是否排斥现在所在国家的文化,那就简单多了,Floyd 走起,下面是代码:
#include <stdio.h>
using namespace std;

const int MAX=999999;
const int MAXN=105;
int n,k,m,s,t,
    c[MAXN],
    a[MAXN][MAXN],
    e[MAXN][MAXN],
    i,j,q,u,v,w;

int main()
{
    scanf("%d%d%d%d%d",&n,&k,&m,&s,&t);
    for(i=1;i<=n;i++) scanf("%d",&c[i]);
    for(i=1;i<=k;i++)
        for(j=1;j<=k;j++) scanf("%d",&a[i][j]);
    for(i=1;i<=n;i++)
        for(j=1;j<=n;j++){
            if(i==j) e[i][j]=0;
            else e[i][j]=MAX;
        }
    for(i=1;i<=m;i++){
        scanf("%d%d%d",&u,&v,&w);
        e[u][v]=w;
        e[v][u]=w;
    }
    for(i=1;i<=n;i++)
        for(j=1;j<=n;j++)
            if(i!=j&&a[c[j]][c[i]]==1)
                e[i][j]=MAX;
    for(q=1;q<=n;q++)
        for(i=1;i<=n;i++)
            for(j=1;j<=n;j++)
                if(e[i][j]>e[i][q]+e[q][j]) e[i][j]=e[i][q]+e[q][j];
    if(e[s][t]<MAX) printf("%d\n",e[s][t]);
    else printf("-1\n");
    return 0;
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/172047.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号