hdu 1022(栈的应用)

来源:互联网 发布:淘宝网花肥 编辑:程序博客网 时间:2024/05/16 16:01

点击打开链接


栈的应用!


#include"stdio.h"#include"stack"#define N 101using namespace std;int main(){stack<char>s;int n,i,j,k,ans[N];char s1[N],s2[N];while(scanf("%d %s %s",&n,s1,s2)!=-1){i=j=k=0;s.push(s1[0]);ans[k++]=1;//记录进出的情况1为进,0为出while(i<n&&j<n){if(!s.empty()&&s.top()==s2[j])//栈顶元素等于当前位置上s2的元素,出栈{j++;s.pop();ans[k++]=0;}else{if(i==n)break;//当i==n时跳出s.push(s1[++i]);//else,进站ans[k++]=1;}}if(i==n)printf("No.\n");//当满足可以转变时,i==n+1;else{printf("Yes.\n");for(i=0;i<k;i++)printf("%s\n",ans[i]?"in":"out");}printf("FINISH\n");}return 0;}


原创粉丝点击