[C_ST42-易] 子字串出現次數
問題描述:
給予兩個英文字串,請計算出第一個字串出現在第二個字串中的次數。
輸入說明:
輸入分為兩行,第一行是由英文大小寫字母與數字所組成的字串,長度不超過 128 個字母。
第二行也是由英文大小寫字母與數字所組成的字串,長度不超過 512 個字母。
輸出說明:
第一個字串出現在第二個字串中的次數。
範例:
給予兩個英文字串,請計算出第一個字串出現在第二個字串中的次數。
輸入說明:
輸入分為兩行,第一行是由英文大小寫字母與數字所組成的字串,長度不超過 128 個字母。
第二行也是由英文大小寫字母與數字所組成的字串,長度不超過 512 個字母。
輸出說明:
第一個字串出現在第二個字串中的次數。
範例:
Sample Input | Sample Output |
aa aaa123bbab | 2 |
baba 12b3bbababa12 | 2 |
baa ababaabbbb | 1 |
- #include <iostream>
- using namespace std;
- int main() {
- // [C_ST42-易] 子字串出現次數
- string str1, str2;
- //str1出現在str2中的次數
- getline(cin, str1);
- getline(cin, str2);
- int fpos = 0, count = 0;
- while(1)
- {
- fpos = str2.find(str1,fpos);
- //在str2字串中尋找子字串str1
- if(fpos != string::npos)
- {
- fpos = fpos + 1;
- count++;
- }
- else //如果找不到就跳出迴圈
- {
- break;
- }
- }
- cout << count << endl;
- return 0;
- }
沒有留言:
張貼留言