poj 2491 Scavenger Hunt

#include<iostream>
#include
<string>
#include
<map>
using namespace std;
string str[500][2];
int main()
{
int cases,v,i;
cin
>>cases;
for(int id=1;id<=cases;++id)
{
scanf(
"%d",&v);
map
<string,string> col;
for(i=1;i<v;++i)
{
cin
>>str[i][0]>>str[i][1];
col.insert(make_pair(str[i][
0],str[i][1]));
}
printf(
"Scenario #%d:\n",id);
bool tag[500];
memset(tag,
0,sizeof(tag));
for(i=1;i<v;++i)
{
for(int j=1;j<v;++j)
if(str[i][1]==str[j][0])
{
tag[j]
=1;
break;
}
}
for(i=1;tag[i]!=0;++i);
string path=str[i][0];
do
{
cout
<<path<<endl;
path
=col[path];
}
while(path!="");
cout
<<endl;
}
return 0;
}

  

posted on 2011-07-22 22:54  sysu_mjc  阅读(180)  评论(0编辑  收藏  举报

导航