1032. Sharing

#include<iostream>
using namespace std;
const int N=100005;
int nex[N];
int main(){
  int add1,add2,cnt;
  cin>>add1>>add2>>cnt;
  for(int i=0,x,y;i<cnt;++i){ char c;cin>>x>>c>>y; nex[x]=y; }
  for(int tmp;add1!=-1;){ tmp=add1; add1=nex[add1];nex[tmp]=0; }
  bool ok=false;
  for(;add2!=-1;add2=nex[add2])
    if(nex[add2]==0){ printf("%05d",add2); ok=true;break;}
  if(!ok)printf("-1");
}
遍历第一个并标记,再遍历第二个

你可能感兴趣的:(1032. Sharing)