P1928 外星密码---递归

 思路:采用递归的方式依次输出来   最后全部输出来

#include<iostream>
using namespace std;

string read()
{
    string s,x;
    char c;
    int n;
    while(cin>>c)//依次输入单个字符
    {
        if(c=='[')
        {
            cin>>n;
            x=read();//读取数字后面的字符串
            for(int i=1;i<=n;i++)//输出倍数
            {
                s+=x;//string可以直接字符串相加
            }
        }
        else if(c==']')
        {
            return s;//遇到']'返回一次s
        }
        else s+=c;
    }
return s;//返回全部的s
}

int main()
{
    cout<<read();//函数的返回值
    return 0;
}

posted @ 2023-11-13 17:50  wakappxc  阅读(3)  评论(0编辑  收藏  举报  来源