捞
  • 板块灌水区
  • 楼主AK_CSPS
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/8/7 09:42
  • 上次更新2024/8/7 10:29:54
查看原帖
捞
933895
AK_CSPS楼主2024/8/7 09:42

P1938 AC#1 其他全WA 附上代码

#include <bits/stdc++.h>
using namespace std;
int d,p,c,f,s,dis[225],mapp[225][225],book[225],n,minn=220005;
void dij(int x)
{
	memset(dis,0x3f,sizeof dis);
	memset(book,0,sizeof book);
	dis[x]=d*c-100;
	for(int i=1;i<c;i++)
	{
		int minn=0x3f3f3f3f,k;
		for(int j=1;j<=c;j++)
		{
			if(dis[j]<minn&&book[j]==0)
			{
				minn=dis[j];
				k=j;
			}
		}
		book[k]=1;
		for(int j=1;j<=c;j++)
		{
			if(dis[j]>dis[k]+mapp[k][j])
			{
				dis[j]=dis[k]+mapp[k][j]-100;
			}
		}
	}
}
int main()
{
	memset(mapp,0x3f,sizeof mapp);
	cin>>d>>p>>c>>f>>s;
	while(p--)
	{
		int a,b;
		cin>>a>>b;
		mapp[a][b]=0;
	}
	while(f--)
	{
		int a,b,t;
		cin>>a>>b>>t;
		mapp[a][b]=t;
	}
	dij(s);
	for(int i=1;i<=c;i++)
	{
		minn=min(minn,dis[i]);
	}
	cout<<abs(d*c-minn);
	return 0;
}
2024/8/7 09:42
加载中...