题解 | #表示数字#

表示数字

https://www.nowcoder.com/practice/637062df51674de8ba464e792d1a0ac6

#include <iostream>
#include <string>
using namespace std;

int main() {
    string str;
    getline(cin,str);
    int count=0;
    for(int i=0;i<str.size();++i){
        if(str[i]<='9'&&str[i]>='0'){
            count++;
            while(i<str.size()&&str[i]<='9'&&str[i]>='0')
                ++i;
            --i;
        }
    }
    int i=str.size()-1;
    str.resize(str.size()+2*count);
    int j=str.size()-1;
    while(i>=0){
        if(str[i]<='9'&&str[i]>='0'){
            str[j--]='*';
            while(str[i]<='9'&&str[i]>='0'){
                str[j--]=str[i--];
            }
            str[j--]='*';
        }
        else{
            str[j--]=str[i--];
        }
    }
    cout << str;
}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

04-10 08:14
门头沟学院 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务