1006出力の変化形式整数
文字ましょうB
文字は、「百」を意味するためにS
使用される、「10」を表す12...n
非ゼロの数字を示すためにn
(<10)、出力する形式に変更しない3以下の正の整数。例えば、234
それは出力されるべきBBSSS1234
ことは、2つの「百」、3「10」、及び4ビットを有するので、。
入力フォーマット:
各試験は、正の整数が与えられると、テスト入力を含む、N-(<1000)。
出力フォーマット:
所定の出力形式とライン当たりの各出力テストケース、N-。
サンプル入力1:
234
出力サンプル1:
BBSSS1234
サンプル入力2:
23
出力サンプル2:
SS123
アイデア:
質問の意味は、それぞれの値の文字列に基づいて、配列を作成し、添字「B」、デジタル入力文字列に変換し、2つの文字「S」のインデックス、およびを確立し、出力します。
コード:
#include <iostream>
#include <string>
using namespace std;
int main() {
int n;
cin >> n;
string kumi[3] = { "0","S","B" };
string str = to_string(n);
for (int i = 0; i < str.size(); i++) {
for (int j = 0; j < (str[i] - '0'); j++) {
if (i != str.size() - 1)
cout << kumi[str.size() - i - 1];
else {
for (int k = 1; k <= str[i] - '0'; k++)
cout << k;
break;
}
}
}
}