2019年天梯赛-全国总决赛-L1-058 6翻了(15 分)

题目链接:https://pintia.cn/problem-sets/994805046380707840/problems/1111914599408664577

题目大意是给一个字符串并按要求变化输出:

1、超过 3 个但不超过 9 个的连续的 6,把连续的 6 替换成 9

2、超过 9 个连续的 6,把连续的 6 替换成 27

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

int main(){
    string str;
    getline(cin,str);
    int s=0;
    for(int i=0;i<str.length();i++){
        if(str[i]=='6'){
            s++;
        }else{
            if(s>9){
                cout << "27";
            }else if(s>3){
                cout << "9";
            }else{
                while(s){
                    cout << "6";
                    s--;
                }
            }
            s=0;
            cout << str[i];
        }
    }
    if(s>9){
        cout << "27";
    }else if(s>3){
        cout << "9";
    }else{
        while(s){
            cout << "6";
            s--;
        }
    }
    cout << "\n";
    return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_26122455/article/details/88928276