厌氧代码求调
  • 板块学术版
  • 楼主yinbe
  • 当前回复3
  • 已保存回复3
  • 发布时间2023/12/30 14:48
  • 上次更新2023/12/30 17:44:24
查看原帖
厌氧代码求调
759152
yinbe楼主2023/12/30 14:48

开O2

不开O2

展开序列

题目描述

请对一下格式进行展开:

[2](abc)def要展开成abcabcdef

[2](abp[3](d))要展开成abpdddabpddd

[2](ab)cd[3](e)123要展开成ababcdeee123

可能存在多层钳套,方括号中的数字可能不止一位。

输入格式

输出格式

提示

三个测试样例:

[2](abc)def
[2](ab)cd[3](e)123
9897[12](hj)ioioio[2](uio[3](a[5](mn)b))567

其对应的三个输出样例:

abcabcdef
ababcdeee123
9897hjhjhjhjhjhjhjhjhjhjhjhjioioiouioamnmnmnmnmnbamnmnmnmnmnbamnmnmnmnmnbuioamnmnmnmnmnbamnmnmnmnmnbamnmnmnmnmnb567

我的代码:

#include<iostream>
using namespace std;
string read()
{
	int n;
	string s="",s1;
	char c;
	while(cin>>c)
	{
		if(c=='[')
		{
			cin>>n;
			getchar();getchar();
			s1=read();
			while(n--)
			{
				s+=s1;
			}
		}
		else
		{
			if(c==')')
			{
				return s;
			}
			else
			{
				s+=c;
			}
		}
	}
}
int main()
{
	string s;
	s=read();
	for(int i=0;i<s.size();i++)
	{
		if(s[i]!='['&&s[i]!=']'&&s[i]!='('&&s[i]!=')')
		{
			cout<<s[i];
		}
	}
	return 0;
}
2023/12/30 14:48
加载中...