#include"iostream"
#include"algorithm"
#include"vector"
#include"queue"
#include"map"
#include"cstdio"
#include"string"
#include"stack"
#include"set"
#include"cstring"
using namespace std;
int v[35][35];
int f=0;
void dfs(int a)
{
if(v[a][12]){f=1;}
else
{
for(int i=0;i<26;i++)
{
if(v[a][i])
{
v[a][i]=0;
dfs(i);
v[a][i]=1;
}
}
}
}
int main()
{
int i,j;
char a[50];
while(cin>>a)
{
memset(v,0,sizeof(v));
if(a[0]=='0')break;
i=a[0]-'a';
j=a[strlen(a)-1]-'a';
v[i][j]=1;
for(;;)
{
cin>>a;
if(a[0]=='0')break;
i=a[0]-'a';
j=a[strlen(a)-1]-'a';
v[i][j]=1;
}
dfs(1);
if(f==1)printf("Yes.\n");
else
printf("No.\n");f=0;
}
return 0;
}
hdu-1181
最新推荐文章于 2019-03-18 20:48:45 发布