k257 - 新生制服套量
題目描述
題目要求將輸入的登錄號碼中的序號轉換為三位數,不足三位數的前面補零。登錄號碼由一個性別代號(M 或 F)加上一到三位數的報到序號組成。
解題思路
這題主要考驗對字串操作和條件判斷的應用。程式首先讀取輸入字串,然後根據字串的長度進行不同的處理:
- 如果字串長度為 2,表示序號只有一位數,在序號前面補兩個零。
- 如果字串長度為 3,表示序號有兩位數,在序號前面補一個零。
- 如果字串長度大於 3,表示序號已經是三位數或更多,直接輸出原字串。
複雜度分析
- 時間複雜度: O(1)
- 空間複雜度: O(1)
程式碼
#include <iostream>
using namespace std;
string a;
int main(){
cin >> a;
if(a.size()==2){
cout << a[0] << "00" << a[1];
}
else if(a.size()==3){
cout << a[0] << "0" << a[1] << a[2];
}
else{
cout << a;
}
}