1题目:
让我们用字母 B 来表示“百”、字母 S 表示“十”,用 12...n 来表示不为零的个位数字 n(<10),换个格式来输出任一个不超过 3 位的正整数。例如 234 应该被输出为 BBSSS1234,因为它有 2 个“百”、3 个“十”、以及个位的 4。
输入格式:
每个测试输入包含 1 个测试用例,给出正整数 n(<1000)。
输出格式:
每个测试用例的输出占一行,用规定的格式输出 n。
输入样例 1:
234
输出样例 1:
BBSSS1234
输入样例 2:
23
输出样例 2:
SS123
2思考过程:
判断是否为三位数,将百位上的数赋值给B,十位赋值给S,个位上的数就迭代输出
3程序:
(一)
n = input()
yu = []
for i in range(len(n)):
yu.append(int(n) % 10)
n = int(n) / 10
l = len(yu)
if l == 3:
for i in range(yu[2]):
print('B', end = '')
for i in range(yu[1]):
print('S', end = '')
for i in range(yu[0]):
print(i + 1, end = '')
if l == 2:
for i in range(yu[1]):
print('S', end = '')
for i in range(yu[0]):
print(i + 1, end = '')
if len(yu) == 1:
for i in range(yu[0]):
print(i + 1, end = '')
(二)
n = int(input())
b = int(n / 100)
s = int((n - 100 * b) / 10)
g = n - 100*b - 10 * s
s1 = 'B' * b
s1 += 'S'* s
s1 += str(list(range(1, g + 1))).replace(', ','')[1 : g + 1]
print(s1)
4结果:
输入1
234
输出1
BBSSS1234
输入2
23
输出2
SS123
网友评论