记录编号 327510 评测结果 AAAAAAAAAA
题目名称 [NOIP 2010冲刺十三]外星密码 最终得分 100
用户昵称 Gravatar浮生随想 是否通过 通过
代码语言 C++ 运行时间 0.014 s
提交时间 2016-10-22 08:47:20 内存使用 0.33 MiB
显示代码纯文本
#include<cstdlib>
#include<cstdio>
#include<iostream>
#include<cstring>
#include<stack>
using namespace std;
stack<char>s1;
stack<int>s2;
stack<char>s3;
char s[20010];
int main(){
	freopen("passworda.in","r",stdin);
	freopen("passworda.out","w",stdout);
	 scanf(" %s",s+1);
	 int len=strlen(s+1);
	 for(int i=1;i<=len;i++){
		if(isdigit(s[i])){
			int x=0;
			while(isdigit(s[i]))x=x*10+s[i]-'0',i++;
			s2.push(x);
		}
		if(s[i]!=']'){
			s3.push(s[i]);
		}
		if(s[i]==']'){
			string xh,sc;
			char k=s3.top();s3.pop();
			while(k!='['){
				xh+=k;
				k=s3.top();s3.pop();	
			}
			int x=s2.top();s2.pop();
			//cout<<x<<endl;
			while(x--)sc+=xh;
			for(int i=sc.size()-1;i>=0;i--){
				s3.push(sc[i]);
			}
		}
	}
	stack<char>ans;
	while(!s3.empty()){
		char k=s3.top();s3.pop();
		ans.push(k);
	}
	while(!ans.empty()){
		char k=ans.top();ans.pop();
		printf("%c",k);
	}
	//getchar();getchar();
}