让我们用字母B来表示“百”、字母S表示“十”,用“12…n”来表示个位数字n(<10),换个格式来输出任一个不超过3位的正整数。例如234应该被输出为BBSSS1234,因为它有2个“百”、3个“十”、以及个位的4。
输入格式:
每个测试输入包含1个测试用例,给出正整数n(<1000)。
输出格式:
每个测试用例的输出占一行,用规定的格式输出n。
输入样例1:
234
输出样例1:
BBSSS1234
输入样例2:
23
输出样例2:
SS123
分析:因为n小于1000,所以数字不会超过百位~输入数据首先保存在a中,然后将a的每一个数字保存在int b[3]中,然后将b[2]、b[1]、b[0]中存储的数字看作输出次数依次输出B、S和12..b[0]~
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
#include <iostream> using namespace std; int main() { int a, i = 0; cin >> a; int b[3] = {0}; while (a != 0) { b[i++] = a % 10; a = a / 10; } for (int k = 0; k < b[2]; k++) cout << "B"; for (int k = 0; k < b[1]; k++) cout << "S"; for (int k = 0; k < b[0]; k++) cout << k + 1; return 0; } |
❤ 点击这里 -> 订阅《PAT | 蓝桥 | LeetCode学习路径 & 刷题经验》by 柳婼