#include"stdio.h"
#include"string.h"
main()
{
char in[10],out[10],stack[10],str[2][4]={"out","in"};
int n,i,top,ans[20],j,rear,flag,k;
while(scanf("%d %s %s",&n,in,out)!=EOF)
{
top=0,rear=0,flag=1,k=0,j=0;
for(i=0;out[i];i++)
{
if(top>0)
if(stack[top-1]==out[i])
{
ans[rear++]=0,top--;
continue;
}
if(!flag)break;
while(in[k]!=out[i]&&k<strlen(in))ans[rear++]=1,stack[top++]=in[k],k++;
ans[rear++]=1,ans[rear++]=0,k++;
if(k>strlen(in)){flag=0;break;}
}
if(flag)
{
puts("Yes.");
for(i=0;i<rear;i++)puts(str[ans[i]]);
}
else puts("No.");
puts("FINISH");
}
return 0;
}
HDOJ1022 Train Problem I 栈模拟
最新推荐文章于 2023-05-07 23:04:56 发布