PAT-1006(水題)

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;	
} 



發佈了59 篇原創文章 · 獲贊 11 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章