比赛 清明时节雨纷纷,今天天气很晴朗 评测结果 AAAAAAAAAA
题目名称 外星密码 最终得分 100
用户昵称 东林桂香 运行时间 0.005 s
代码语言 C++ 内存使用 0.33 MiB
提交时间 2017-04-07 20:22:47
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<cmath>
#include<algorithm>
#include<stack>
#include<cstring>
using namespace std;
typedef long long LL;typedef unsigned long long ULL;
char s[20010];int len;
stack<char> a,b,ans;
stack<int> c;
int main(){
    freopen("passworda.in","r",stdin);
	freopen("passworda.out","w",stdout);
	scanf("%s",s);
	len=strlen(s);
	for(int i=0;i<len;i++){
		if(isdigit(s[i])){
			int temp=0;
			while(isdigit(s[i])){
				temp*=10;temp+=s[i]-'0';
				i++;
			}
			c.push(temp);
		}
		if(s[i]!=']'){
			b.push(s[i]);
		}
		else{
			string temp1,temp2;
			char temp3=b.top();b.pop();
			while (temp3!='['){
				temp1+=temp3;
				temp3=b.top();b.pop();
			}
			int temp4=c.top();c.pop();
			while (temp4--){
				temp2+=temp1;
			}
			for (int i=temp2.size()-1;i>=0;i--){
				b.push(temp2[i]);
			}
		}
	}
	while(!b.empty()){
		ans.push(b.top());
		b.pop();
	}
	while(!ans.empty()){
		printf("%c",ans.top());
		ans.pop();
	}
	fclose(stdin);
	fclose(stdout);
	return 0;
}