每日一題 4 倒置字串 字串 OJ技巧

2021-09-26 23:20:12 字數 1082 閱讀 9041

將一句話的單詞進行倒置,標點不倒置。比如 i like beijing. 經過函式後變為:beijing. like i

輸入描述:

每個測試輸入包含1個測試用例: i like beijing. 輸入用例長度不超過100

輸出描述:

依次輸出倒置之後的字串,以空格分割

示例1

輸入

i like beijing.

輸出beijing. like i

本題題意很簡單,就是將一段字串中的前後單詞進行交換,以單詞進行逆置。在此提供兩種解題思路:

1.第一思路:現將整個字串逆置,再遍歷字串找出每個單詞,對單詞進行逆置。充分利用stl演算法中reverse函式,故在此使用迭代器遍歷string,在程式設計過程中也使用到了c++11中auto關鍵字來提高效率,對於該關鍵字詳情可參考我的一篇博文對auto關鍵字進行詳解:[c++系列] 7. c++auto關鍵字(c++11)。

2. 第二思路:是乙個比較討巧的思路,直接利用cin>>s接收輸入,遇到空格就結束了,自然就分割開了每個單詞,其次將每次接收到的單詞拼接到之前串的前面就逆置過來了。類似於這樣思路可以幫助節約很多時間,開拓下視野的黑科技也是很有實用價值的。

第一思路:

#include

#include

#include

using

namespace std;

intmain()

cout << mys << endl;

return0;

}

第二思路:

#include

#include

#include

using

namespace std;

intmain()

每日一題 倒置字串

題目描述 將一句話的單詞進行倒置,標點不倒置。比如 i like beijing.經過函式後變為 beijing.like i 輸入描述 每個測試輸入包含1個測試用例 i like beijing.輸入用例長度不超過100 輸出描述 依次輸出倒置之後的字串,以空格分割 示例1輸入 i like be...

每日一題 倒置字串

題目 題目描述 將一句話的單詞進行倒置,標點不倒置。比如 i like beijing.經過函式後變為 beijing.like i 輸入描述 每個測試輸入包含1個測試用例 i like beijing.輸入用例長度不超過100 輸出描述 依次輸出倒置之後的字串,以空格分割 輸入 i like be...

每日一題 字串

題目描述 小n現在有乙個字串s。他把這這個字串的所有子串都挑了出來。乙個s的子串t是合法的,當且僅當t中包含了所有的小寫字母。小n希望知道所有的合法的s的子串中,長度最短是多少。輸入描述 一行乙個字串s。只包含小寫字母。s的長度不超過1e6.輸出描述 一行乙個數字,代表最短長度。資料保證存在乙個合法...