1. 程式人生 > >PAT B11006 換個格式輸出整數 (15 分)

PAT B11006 換個格式輸出整數 (15 分)

大小 get tex 試用 bbs 超過 不為 include lan

讓我們用字母 B 來表示“百”、字母 S 表示“十”,用 12...n 來表示不為零的個位數字 n<),換個格式來輸出任一個不超過 3 位的正整數。例如 234 應該被輸出為 BBSSS1234,因為它有 2 個“百”、3 個“十”、以及個位的 4。

輸入格式:

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

輸出格式:

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

輸入樣例 1:

234

輸出樣例 1:

BBSSS1234

輸入樣例 2:

23

輸出樣例 2:

SS123
#include <stdio.h>
#include <algorithm>
#include 
<string> #include <map> #include <iostream> #include <stack> using namespace std; const int maxn = 100; int index[3] = { 0 }; int main(){ int n; cin >> n; int pos = 2; while (n != 0){ index[pos--] = n % 10; n /= 10; } for (int i = 0; i < index[0
]; i++){ cout << B; } for (int i = 0; i < index[1]; i++){ cout << S; } for (int i = 0; i < index[2]; i++){ cout << i+1; } system("pause"); }

註意點:輸入整數不一定是三位數,所以不能用getchar直接來做。用數組倒著存也就是先進後出(filo),也可以用stack,但就需要判斷大小了

PAT B11006 換個格式輸出整數 (15 分)