这个题做得有点久呀!!!记的是和大冰最先开始搞这个题的,却是最后一个ac的。。。⊙﹏⊙。。这个题的思路就是oj上寻找最大数那个题的思路和栈的思想。。
#include<stdio.h>
char yi[100];
int k=0;
void get(int n)
{
if(n==1)
yi[k++]='1';//进
else if(n==0)
{
yi[k++]='1';
yi[k++]='0';//出
}
else
yi[k++]='0';
}
int main()
{
int a,b,c,n,m;
while(scanf("%d",&n)!=EOF)
{
char ok1[15],ok2[15];
int top=-1;
int ac[15]={0};//标记是否已经出去。。
k=0;c=0;
scanf("%s%s",ok1,ok2);
for(a=0;a<n;a++)
{
b=a;
if(ok1[a]!=ok2[c])
{
get(1);
top++;
}
else
{
get(0);
ac[a]=1;
c++;
while(b>0)
{
b--;
if(ac[b]==1)
continue;
if(ok1[b]==ok2[c])
{
get(2);
ac[b]=1;
c++;
top--;
}
else
break;
}
}
}
if(top!=-1)
printf("No.\n");
else
{
printf("Yes.\n");
for(a=0;a<k;a++)
if(yi[a]=='1')
printf("in\n");
else
printf("out\n");
}
printf("FINISH\n");
}
}