比赛 清明时节雨纷纷,今天天气很晴朗 评测结果 AWAAWWWAWA
题目名称 外星密码 最终得分 50
用户昵称 Hyoi_iostream 运行时间 0.005 s
代码语言 C++ 内存使用 0.32 MiB
提交时间 2017-04-07 20:32:46
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<stack>
using namespace std;
string sr;
stack<int>num;
stack<string>str;
int check=0,x,len;
void work();
int main(){
	freopen("passworda.in","r",stdin);
	freopen("passworda.out","w",stdout);
	work();
	fclose(stdin);
	fclose(stdout);
}
void work(){
	char ch;
	    while(scanf("%c",&ch)==1){
	    if(ch=='\n') break;
	    if(check>0){
			string sa="";
			while(ch!='['&&ch!=']'){
				sa+=ch;
				scanf("%c",&ch);
			}
			str.push(sa);
		}
		if(ch=='['){
			check++;
			scanf("%d",&x);
			num.push(x);
			str.push("[");
		}
		if(ch==']'){
			check--;
			x=num.top();
			num.pop();
			string sb="";
			while(!str.empty()){
			    string ss=str.top();
				str.pop();
				if(ss=="[") break; 
				sb+=ss;
			}
			string s1=sb;sb="";
			for(int i=1;i<=x;i++) sb+=s1;
		    str.push(sb);
		}
		if(check<=0){
			while(!str.empty()){
				if(str.top()!="[") sr+=str.top();
				str.pop();
			}
		}
		if(ch!='['&&ch!=']') sr+=ch;
    }
	cout<<sr;
}