PAT 乙級1006
阿新 • • 發佈:2018-11-23
1006. 換個格式輸出整數 (15)
時間限制 400 ms記憶體限制 65536 kB
程式碼長度限制 8000 B
判題程式 Standard 作者 CHEN, Yue
讓我們用字母B來表示“百”、字母S表示“十”,用“12...n”來表示個位數字n(<10),換個格式來輸出任一個不超過3位的正整數。例如234應該被輸出為BBSSS1234,因為它有2個“百”、3個“十”、以及個位的4。
輸入格式:每個測試輸入包含1個測試用例,給出正整數n(<1000)。
輸出格式:每個測試用例的輸出佔一行,用規定的格式輸出n。
輸入樣例1:234輸出樣例1:
BBSSS1234輸入樣例2:
23輸出樣例2:
SS123
#include<iostream> using namespace std; int b[3] = {100,10,1}; char c[3] = {'B','S','0'}; //注意cout<<字元+數字 會輸出結果對應的ascii碼 //用一個全域性陣列會方便很多 int main() { int n,i,d; cin>>n; i = 0; while( n>0 ){ d = n/b[i]; if( d ){ if( i==2 ) for( int j=1; j<=d; j++ ){ char t = c[i]+j; cout<<t; } else{ for( int j=1; j<=d; j++ ) cout<<c[i]; } } n = n%b[i]; i++; } return 0; }