Train Problem I 战?栈:战

来源:互联网 发布:windows修复助手 编辑:程序博客网 时间:2024/06/08 06:53
#include<stdio.h>#include<string.h>#include<algorithm>#include<stack>using namespace std;int main(){    int i,j,n,k,b[1000],m,l;    char a[1000],c,s[1000];    stack<char> p;    while(~scanf("%d",&n))    {        k=i=j=m=0;        scanf("%s %s",s,a);        while(m<n)        {            p.push(s[m]);b[k++]=0;            while(!p.empty()&&p.top()!=a[i])            {                m++;                p.push(s[m]);                b[k++]=0;            }            m++;            while(!p.empty()&&p.top()==a[i])            {                p.pop();                b[k++]=1;                i++;            }        }       if(i==n)       {           printf("Yes.\n");           for(i=0;i<k;i++)           {               if(b[i]==0)printf("in\n");               else printf("out\n");           }       }       else       {           printf("No.\n");           while(!p.empty())           {               p.pop();           }       }       printf("FINISH\n");    }    return 0;}

点击打开链接
0 0
原创粉丝点击