91分#12WA dijkstra求助!
查看原帖
91分#12WA dijkstra求助!
519986
Luxe877楼主2023/8/7 18:41

rt,代码如下

#include<bits/stdc++.h>
using namespace std;
int n;
int sq[202][202];
int dis[202];
bool vis[202];
void dijkstra(int x)
{
	dis[x]=0;
	memset(vis,false,sizeof(vis));
	for(int i=1;i<n;i++)
	{
		int ptr,t=0x3f3f3f3f;
		for(int j=1;j<=n;j++)
		{
			if(!vis[j]&&dis[j]<t)
			{
				t=dis[j];
				ptr=j;
			}
		}
		vis[ptr]=true;
		for(int j=1;j<=n;j++)
		{
			if(!vis[j]&&dis[j]>dis[i]+sq[i][j])
			{
				dis[j]=dis[i]+sq[i][j];
			}
		} 
	}
}
int main()
{
	cin>>n;
	memset(dis,0x3f3f3f3f,sizeof(dis));
	for(int i=1;i<=n;i++)
	{
		for(int j=i+1;j<=n;j++)
		{
			cin>>sq[i][j];
		}
	}
	dijkstra(1);
	cout<<dis[n];
	return 0;
}
2023/8/7 18:41
加载中...