京东实习_字符矩阵中字符串的匹配个数
输入:输入矩阵长/宽度n,和目标字符串str,再 输入n*n的字符矩阵;
求解:给出字符矩阵中 横向和纵向匹配字符串str的个数
1 #include2 using namespace std; 3 int main(){ 4 int n,res=0; 5 char ch; 6 string str; 7 cin >> n; 8 cin >>str; 9 vector char>> tab; 10 for (int i = 0; i < n;i++) 11 { 12 vector<char> s; 13 for (int j = 0; j < n;j++){ 14 cin >> ch; 15 s.push_back(ch); 16 } 17 tab.push_back(s); 18 } 19 int len = str.size(); 20 for (int i = 0; i < n;i++){ 21 for(int j = 0;j ){ 22 for (int k = 0; i+k < n ;k++){ //down 23 if(str[k]!=tab[i+k][j])break; 24 if(k==len-1){ 25 res++; 26 } 27 } 28 for (int k = 0; j+k < n;k++){ //right 29 if(str[k]!=tab[i][j+k])break; 30 if(k==len-1){ 31 res++; 32 } 33 } 34 } 35 } 36 cout << res; 37 return 0; 38 }
输入:
3 abc xax abc xcx
输出:
2
第二行和第二列都是 :abc
思想:暴力解法,遍历每一个点