题解 | #统计字符串中子串出现的次数#
统计字符串中子串出现的次数
https://www.nowcoder.com/practice/9eb684f845a446f3b121472de2ea75cd
#include <iostream>
#include <cstring>
using namespace std;
int my_count(const char* str, const char* substr, int n, int m) {
int count = 0;
int index = 0;
bool flag = false;
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++) {
if (substr[i] == str[j]) {
for (int k = 1; k < m; k++) {
if (substr[i + k] == str[j + k] && substr[i + k] != 0 && str[j + k] != 0) {
index++;
if (index == m - 1) {
flag = true ;
index = 0;
}
} else {
index = 0;
flag = false;
}
}
if (flag) {
count++;
}
}
}
}
return count;
}
int main() {
char str[100] = { 0 };
char substr[100] = { 0 };
cin.getline(str, sizeof(str));
cin.getline(substr, sizeof(substr));
int count = 0;
// write your code here......
count = my_count(str, substr, strlen(str), strlen(substr));
cout << count << endl;
return 0;
}
