題目
讓我們用字母 B 來表示“百”、字母 S 表示“十”,用 12...n 來表示不為零的個位數字 n(<10),換個格式來輸出任一個不超過 3 位的正整數。例如 234 應該被輸出為 BBSSS1234,因為它有 2 個“百”、3 個“十”、以及個位的 4。
輸入格式:
每個測試輸入包含 1 個測試用例,給出正整數 n(<1000)。
輸出格式:
每個測試用例的輸出佔一行,用規定的格式輸出 n。
輸入樣例:
234
輸出樣例:
BBSSS1234
思路分析
簡單題,按編碼順序求各個數位即可
舉一反三
顯然非十進位制數也可如此處理
程式碼
#include <iostream>
using namespace std;
int main() {
int num;
cin >> num;
int g = num % 10;
num = (num - g) / 10;
int s = num % 10;
num = (num - s) / 10;
int b = num % 10;
while (b--) {
cout << "B";
}
while (s--) {
cout << "S";
}
for (int i = 1; i <=g; i++) {
cout << i;
}
return 0;
}
本作品採用《CC 協議》,轉載必須註明作者和本文連結