让我们用字母 B
来表示“百”、字母 S
表示“十”,用 12...n
来表示不为零的个位数字 n
(n < 1000),换个格式来输出任一个不超过 3 位的正整数。例如 234
应该被输出为 BBSSS1234
,因为它有 2 个“百”、3 个“十”、以及个位的 4。
每个测试输入包含 1 个测试用例,给出正整数 n(<)。
每个测试用例的输出占一行,用规定的格式输出 n。
234
BBSSS1234
23
SS123
给出的数字至多只有3位数,所以可以创建一个大小为3的数组,分别存放百位、十位、个位。最后利用循环输出就可以了
1 #include <iostream> 2 using namespace std; 3 4 int main() 5 { 6 int n; 7 int arr[3]; 8 cin >> n; 9 10 for (int i = 2; i >= 0; --i) 11 { 12 arr[i] = n % 10; 13 n /= 10; 14 } 15 16 for (int i = 0; i < arr[0]; ++i) 17 { 18 cout << "B"; 19 } 20 for (int i = 0; i < arr[1]; ++i) 21 { 22 cout << "S"; 23 } 24 for (int i = 1; i <= arr[2]; ++i) 25 { 26 cout << i; 27 } 28 return 0; 29 }
原文:https://www.cnblogs.com/47Pineapple/p/11378941.html