python PAT 1006

n=input()
yu=[]
for i in range(len(n)):     #求余,并存在yu这个列表里
    yu.append(int(n)%10)
    n=int(n)/10
l=len(yu)     #余这个List的长度,从而确定是个位数还是十位数还是百位数
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='')

这个题目的输入范围控制在最多三位的正整数,所以我直接分开输出的,如果输入的正整数范围不定,那我这个输出格式很显然需要更改的。

猜你喜欢

转载自blog.csdn.net/Saber_lyl/article/details/82223107