代码求调!(悬赏一关)
查看原帖
代码求调!(悬赏一关)
678447
CSPAK_Zhangxiuqi0011楼主2024/7/27 20:05
#include<bits/stdc++.h>
using namespace std;
#define int long long
#define INT_MAX LONG_LONG_MAX
#define INT_MIN LONG_LONG_MIN
int d[505][505],now[505];
string a;
signed main() {
	ios::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
	int m,n;
	cin>>m>>n;
	memset(d,0x3f,sizeof(d));
	getline(cin,a);
 	for(int i = 1;i<=m;i++){
		getline(cin,a);
		int num,l,h;
		num = 1;
		l = a.size();
		h = 0;
		for(int j = 0;j<l;j++){
			if(a[j] == ' '){
				now[num++] = h;
				h = 0;
			}else{
				h = h*10+a[j]-'0'; 
			}
		}
		now[num] = h;
		for(int j = 1;j<=num;j++){
			for(int k = j+1;k<=num;k++){
				d[now[j]][now[k]] = 1;
			}
		}
	}
	for(int i = 1;i<=n;i++){
		d[i][i] = 0;
	}
	for(int k = 1;k<=n;k++){
		for(int i = 1;i<=n;i++){
			for(int j = 1;j<=n;j++){
				d[i][j] = min(d[i][j],d[i][k]+d[k][j]);
			}
		}
	}
	if(d[1][n] == d[0][0]){
		cout<<"NO\n";
		return 0;
	}
	cout<<d[1][n]-1<<"\n";
	return 0;
}

这份代码在本地跑数据都可以过,但是提交上去显示输出的都是NO。我输入的有什么问题啊?求调!
数据:

in:
4
15
2 11
1 3 4 5 9
3 6 11
2 7 8 10 11 12 13 15
out:2
2024/7/27 20:05
加载中...