蒟蒻求助:#2自测输出出现'\001'字符问题
查看原帖
蒟蒻求助:#2自测输出出现'\001'字符问题
421773
unsigned_char楼主2021/2/6 19:44
  • #1,#5,#9 AC
  • #2,#3,#10 WA
  • #4,#6,#7,#8 RE

#2自测输出出现'\001'字符(ASCII编码为1的字符),调试发现问题出在输入,请大佬们指正

#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;

struct Node
{
	char str[100];
	int n;
};
Node s[1000];

char a[100000];

int main()
{
	cin>>a;
	for(int i=0;i<=1000;++i)
	{
		s[i].n=1;
	}
	int j=0;
	for(int i=0;i<strlen(a);)
	{
		if(a[i]=='[')
		{
			if(a[i+2]>='0'&&a[i+2]<='9')
			{
				s[j].n*=(a[i+1]-'0')*10+(a[i+2]-'0');
				i+=3;
			}
			else
			{
				s[j].n*=a[i+1]-'0';
				i+=2;
			}
		}
		if(a[i]>='A'&&a[i]<='Z')
		{
			for(int k=0;;++i,++k)
			{
				if(a[i]=='['||a[i]==']'||a[i]=='\0')
				{
					++j;
					break;
				}
				s[j].str[k]=a[i];
			}
		}
		if(a[i]==']')
		{
			++i;
		}
	}
	for(int i=0;i<=j;++i)
	{
		for(int l=1;l<=s[i].n;++l)
		{
			cout<<s[i].str;
		}
	}
	return 0;
}
2021/2/6 19:44
加载中...