1006. 换个格式输出整数 (15)

来源:互联网 发布:macbook下不了软件 编辑:程序博客网 时间:2024/05/17 05:13

1006. 换个格式输出整数 (15)
让我们用字母B来表示“百”、字母S表示“十”,用“12…n”来表示个位数字n(<10),换个格式来输出任一个不超过3位的正整数。例如234应该被输出为BBSSS1234,因为它有2个“百”、3个“十”、以及个位的4。

输入格式:

每个测试输入包含1个测试用例,给出正整数n(<1000)。

输出格式:

每个测试用例的输出占一行,用规定的格式输出n。

输入样例1:

234

输出样例1:

BBSSS1234

输入样例2:

23

输出样例2:

SS123

#include <iostream>#include <string>using namespace std;int main(){    string str;    cin >> str;    int k;    if(isalpha(str[0])){        int sum = 0;        k = 0;        for(k = 0 ; str[k]=='B' ; k++)sum +=100;        for(;str[k]=='S';k++)sum+=10;        int len = str.length();        if(isdigit(str[len-1]))sum += str[len-1]-'0';        cout<<sum<<endl;    }else{        int len = str.length();        int sum = 0;        for(int i = 0 ; i < len ; i++){            sum = str[i]-'0'+sum*10;        }        //cout<<sum<<endl;        k = sum/100;        for(int i = 0 ; i < k ; i++)cout<<"B";        k =(sum%100)/10;        for(int i = 0 ; i < k ; i++)cout<<"S";        k = sum%10;         for(int i = 1 ; i <= k ; i++)cout<<i;    }    return 0;} 
原创粉丝点击