能过样例但是0分
查看原帖
能过样例但是0分
775375
SCP982楼主2023/2/11 18:59

第一个MLE
第二个和第三个RE
第四个WA
第五个TLE
有没有大神给改一改,在线等挺急的\

#include<bits/stdc++.h>
using namespace std;
struct node{
	int asd,ypj;
};
int n,m;
bool vis[1000002];
int mSum[1000002],ans[1000002];
vector<int>v[1000002];
queue<node>q;
int main(){
	scanf("%d%d",&n,&m);
	for(int i=1;i<=m;++i){
		int x,y;
		scanf("%d%d",&x,&y);
		v[x].push_back(y);
	}
	q.push({1,1});
	vis[1]=true;
	ans[1]=1;
	while(!q.empty()){
		node f=q.front();
		int nNum=f.asd,nSte=f.ypj;
		int sN=v[nNum].size();
		for(int i=0;i<sN;++i){
			if(v[nNum][i]==-1)continue;
			int xx=v[nNum][i];
			if(!vis[xx]){
				mSum[xx]=nSte+1;
				ans[xx]++;
				vis[xx]=true;
			}
			else if(mSum[xx]==nSte+1)ans[xx]++;
			q.push({xx,nSte+1});
			v[nNum][xx]=-1;
		}
		q.pop();
	}
	for(int i=1;i<=n;++i){
		printf("%d\n",ans[i]%100003);
	}
	return 0;
}
2023/2/11 18:59
加载中...