警钟敲碎
查看原帖
警钟敲碎
1127560
SR_G_B_ysqd1602楼主2024/7/31 16:43

千万不要贪心做,不然就是10pts

血的教训

错误示范:

for(int i=1;i<=n;i++){
		for(int j=1;j<=n;j++){
			scanf("%d",&w[i][j]);
		}
	}
	cin>>m;
	for(int k=1;k<n;k++){
		for(int i=1;i<n;i++){
			for(int j=1;j<=n;j++){
				w[i][j]=min(w[i][j],w[i][k]+w[k][j]);
			}
		}
	}
	for(int i=1;i<=m;i++)scanf("%d",&a[i]),ans+=w[qq][a[i]],qq=a[i];//qq记录前驱点,初始为1 
	ans+=w[qq][n];//从n出去 
	cout<<ans;
2024/7/31 16:43
加载中...