e051 - 文意字彙
題目描述
題目要求將輸入的英文單字,保留頭尾字母不變,將中間的字母替換為底線。
解題思路
此題的解題思路非常直接。首先讀取輸入的字串。然後輸出字串的第一個字元,接著輸出 _ 字元 n-2 次,其中 n 是字串的長度。最後輸出字串的最後一個字元。
複雜度分析
- 時間複雜度: O(n),其中 n 是字串的長度。因為需要遍歷字串一次來輸出底線。
- 空間複雜度: O(1),因為只使用了常數額外的空間。
程式碼
#include <iostream>
#include <string>
using namespace std;
int main(){
string A;
cin >> A;
cout << A[0];
for(int i=0;i<A.size()-2;i++){
cout << "_";
}
cout << A[A.length()-1];
return 0;
}