1006. 換個格式輸出整數 (15)
讓我們用字母B來表示“百”、字母S表示“十”,用“12...n”來表示個位數字n(<10),換個格式來輸出任一個不超過3位的正整數。例如234應該被輸出爲BBSSS1234,因爲它有2個“百”、3個“十”、以及個位的4。
輸入格式:每個測試輸入包含1個測試用例,給出正整數n(<1000)。
輸出格式:每個測試用例的輸出佔一行,用規定的格式輸出n。
輸入樣例1:234輸出樣例1:
BBSSS1234輸入樣例2:
23輸出樣例2:
SS123
注意:當時我做這道題一直卡在14分上(總分15),最後才發現忽略了一個細節,例如當n=3時要輸出123
我們來看一下代碼的實現:
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
int n;
while(cin>>n)
{
if(n>0&&n<10)
{
for(int i=1;i<=n;i++)
cout<<i;
cout<<endl;
}
if(n>=10&&n<=99)
{
for(int i=0;i<n/10;i++)
cout<<'S';
for(int i=1;i<=n%10;i++)
cout<<i;
cout<<endl;
}
if(n>=100&&n<1000)
{
for(int i=0;i<n/100;i++)
cout<<'B';
for(int i=0;i<(n%100)/10;i++)
cout<<'S';
for(int i=1;i<=n%10;i++)
cout<<i;
cout<<endl;
}
}
return 0;
}