求助高手,P1928题,为什么只有10分,自己测试数据都行呀
  • 板块题目总版
  • 楼主ximaicodemao
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/12/11 17:42
  • 上次更新2024/12/11 21:10:26
查看原帖
求助高手,P1928题,为什么只有10分,自己测试数据都行呀
1030330
ximaicodemao楼主2024/12/11 17:42
#include<bits/stdc++.h>
using namespace std;
int main(){
	stack<char> mystack;
	char x,a;
	int num=0,k=1;
	string s="",rs="";
	while(cin.get(a)){
		if(a=='\n') {
			while(!mystack.empty()){
				x=mystack.top();
				mystack.pop();
				s=x+s;
			}
			break; 
		}
		else if(a!=']') {
			mystack.push(a);
		}
		else if(a==']'){
			s="";
			x=mystack.top();
			while(x!='['){
				if(x>='A'&&x<='Z'){
					rs=x+rs;
					mystack.pop();
					x=mystack.top();
				}
				else{
					num+=int(x-'0')*k;
					k*=10;
					mystack.pop();
					x=mystack.top();
				}
			}
			mystack.pop();
			for(int i=1;i<=num;i++){
				s+=rs;
			}
			num=0;k=1;rs=s;
		}
	}
	cout<<s;
	return 0;
}	
2024/12/11 17:42
加载中...