码迷,mamicode.com
首页 > 其他好文 > 详细

chaper3_exerise_Uva10340_子字串

时间:2016-06-14 19:00:44      阅读:138      评论:0      收藏:0      [点我收藏+]

标签:

 1 #include<iostream>
 2 #include<string>
 3 #include<cstring>
 4 using namespace std;
 5 
 6 int Find(char *fstr, char *sstr)
 7 {
 8     int lenf = strlen(fstr), lens = strlen(sstr), i;
 9     for (i = 0; i < lenf; i++)            
10     {
11         int k = i;                              //搜寻从下一个字符作为首字符开始 
12         int j = 0;                              //子串每次都从第一个字符开始 
13         while (fstr[k] && sstr[j]) {            //结束条件是,其中一个字符串到达了‘\0‘ 
14             int _i;
15             for (_i = k; _i < lenf; _i++) {     //在fstr中查找sstr[j]字符
16                 if (fstr[_i] != sstr[j])        //找不到继续 
17                     continue;
18                 else {
19                     j++; k = _i; k++;  break;  //将找到sstr[j]字符的下一个位置赋给k,再扫描后面是否有新sstr[j] 
20                 } 
21             }
22             if (_i == lenf)      //如果找不到--如何处理---如果连一个字符都没有相同的,这个就可以得出无法得出了 
23                 return false;
24         }
25         if (j == lens) {
26             return true;
27         }
28         else
29             continue;
30     }
31     if (i == lenf) 
32         return false;
33 }
34 
35 const int maxn = 1010;
36 
37 int main()
38 {
39     char s[maxn], t[maxn];
40     cin >> s >> t;
41     if (Find(t, s))
42         cout << "Yes" << endl;
43     else
44         cout << "No" << endl;
45     return 0;
46 }

 

chaper3_exerise_Uva10340_子字串

标签:

原文地址:http://www.cnblogs.com/douzujun/p/5584883.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!