PAT 換個格式輸出整數

讓咱們用字母 B 來表示「百」、字母 S 表示「十」,用 12...n 來表示不爲零的個位數字 n,換個格式來輸出任一個不超過 3 位的正整數。例如 234 應該被輸出爲BBSSS1234,由於它有 2 個「百」、3 個「十」、以及個位的 4。ios

輸入格式:

每一個測試輸入包含 1 個測試用例,給出正整數 n(<1000)。app

輸出格式:

每一個測試用例的輸出佔一行,用規定的格式輸出 n。函數

輸入樣例 1:

234

輸出樣例 1:

BBSSS1234

輸入樣例 2:

23

輸出樣例 2:

SS123
s=[]
def lists(k,t):
    for i in range(k):
        s.append(t)
    return s
a=int(input())
b=a%10
c=a//10%10
d=a//100
lists(d,'B')
lists(c,'S')
for i in range(1,b+1):
    s.append(str(i))
print(''.join(s))

Python版的,屬於投機取巧型,畢竟Python有些函數實在太好用了,怎麼能不用呢?測試

#include <iostream>
#include <stdio.h>
using namespace std;

int main()
{
    int n,a,b,c;
    cin>>n;
    a=n%10;
    b=n/10%10;
    c=n/100%10;
    int i=0;
    for(;i<c;i++){
        printf("B");
    }
    for(i=0;i<b;i++)
        printf("S");
    for(i=1;i<=a;i++){
        printf("%d",i);
    }
    printf("\n");
    return 0;
}

這個卻是代碼量和Python差很少,效率是真的高spa

相關文章
相關標籤/搜索