问题标题: 酷町堂:2832

0
0
已解决
李宜和
李宜和
高级启示者
高级启示者

WA20

#include <bits/stdc++.h>
using namespace std;
long long n,cnt;
string a;
int main(){ 
    cin>>a;
    for(int i=0;i<a.size();i++){
        if(a[i+1]=='1'){
            cnt=i;
            for(int i=1;i<=1;i++){
                cout<<a[cnt];
            }
            a.erase(cnt+1,1);
            continue;
        }
        if(a[i+1]=='2'){
            cnt=i;
            for(int i=1;i<=2;i++){
                cout<<a[cnt];
            }
            a.erase(cnt+1,1);
            continue;
        }
        if(a[i+1]=='3'){
            cnt=i;
            for(int i=1;i<=3;i++){
                cout<<a[cnt];
            }
            a.erase(cnt+1,1);
            continue;
        }
        if(a[i+1]=='4'){
            cnt=i;
            for(int i=1;i<=4;i++){
                cout<<a[cnt];
            }
            a.erase(cnt+1,1);
            continue;
        }
        if(a[i+1]=='5'){
            cnt=i;
            for(int i=1;i<=5;i++){
                cout<<a[cnt];
            }
            a.erase(cnt+1,1);
            continue;
        }
        if(a[i+1]=='6'){
            cnt=i;
            for(int i=1;i<=6;i++){
                cout<<a[cnt+1];
            }
            a.erase(cnt+1,1);
            continue;
        }
        if(a[i+1]=='7'){
            cnt=i;
            for(int i=1;i<=7;i++){
                cout<<a[cnt];
            }
            a.erase(cnt+1,1);
            continue;
        }
        if(a[i+1]=='8'){
            cnt=i;
            for(int i=1;i<=8;i++){
                cout<<a[cnt];
            }
            a.erase(cnt+1,1);
            continue;
        }
        if(a[i+1]=='9'){
            cnt=i;
            for(int i=1;i<=9;i++){
                cout<<a[cnt];
            }
            a.erase(cnt+1,1);
            continue;
        }
        cout<<a[i];   
    }
    return 0;
}

 


0
已采纳
李奕歌
李奕歌
初级天翼
初级天翼

不要那么复杂,核心:

先输入s

for(int i=0;i<s.size();i++){
        if(s[i+1]>='0'&&s[i+1]<='9'){
            for(int j=1;j<=s[i+1]-'0';j++){
                cout<<s[i];
            }
        }
        else{
            if(s[i]<='0'||s[i]>='9')
            cout<<s[i];
        }
    }

 

0
0
李宜和
李宜和
高级启示者
高级启示者

@李奕歌 

#include <bits/stdc++.h>
using namespace std;
long long n,cnt;
string s;
int main(){ 
    cin>>s;
    for(int i=0;i<s.size();i++){
        if(s[i+1]>=' 0' &&s[i+1]<='9' ){
            for(int j=1;j<=s[i+1]-'0' ;j++){
                cout<<s[i];
            }
        }else{
            if(s[i]<='0' ||s[i]>='9' ){
                cout<<s[i];
            }
        }
    }
    return 0;
}

不对啊

0
我要回答