简单子串查找--strstr的使用(ZCMU1108)
生活随笔
收集整理的這篇文章主要介紹了
简单子串查找--strstr的使用(ZCMU1108)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
1108: 松哥的困惑
Time Limit: 1 Sec Memory Limit: 128 MB
Description
都到世界末日了,松哥都沒找到女朋友,因此松哥感到很困惑.沒想到到了世界末日都沒人喜歡我.松哥一生氣就發(fā)布了征友啟事,第二天,一共有n個人報名應征松哥女友.松哥對女友的要求有三點,第一點,名字必須有三個字,第二點,名字中要帶Li,第三點名字中要帶Ting.松哥希望你能從n個人中.松哥決定選取一人并和她約會.你能找到是誰嘛?
Input
多組測試數(shù)據(jù).
每組測試數(shù)據(jù)的第一行是一個正整數(shù)(n<=100).
接下來n行分別有n個名字.每個名字不超過20個字符.
名字的格式為:名+姓,且首字母大寫,比如沈利松就叫LiSongShen.
Output
對于每組數(shù)據(jù)輸出與松哥約會的名字.
輸入數(shù)據(jù)保證只有一個人滿足松哥的要求.
Sample Input
2
LiSongShen
LiTingXu
Sample Output
LiTingXu
Way1使用了strstr函數(shù):
Way2未使用strstr:
#include <stdio.h>#include <string.h>char a[25],b[25];int main(){int n,f;while(~scanf("%d",&n)){while(n--){memset(a,'\0',sizeof(a));scanf("%s",a);int num = 0, flag1 = 0,flag2 = 0,flag = 0;if(!flag){for(int i = 0; a[i] != '\0'; i++){if(a[i] >= 'A' && a[i] <= 'Z'){num++;}if(num >= 3){for(int j = 1; a[j] != '\0'; j++){if(a[j] == 'i' && a[j-1] == 'L'){flag1 = 1;break;}}if(flag1){char c[6];for(int k = 0; a[k] != '\0'; k++){memset(c,'\0',sizeof(c));int t = 0;for(int j = k; j< k+4; j++){c[t++] = a[j];}if(strcmp(c,"Ting") == 0){flag2 = 1;break;}}}if(flag2){flag = 1;strcat(b,a);break;}}}}}if(n == -1){for(int i = 0; b[i] != '\0'; i++)printf("%c",b[i]);printf("\n");memset(b,'\0',sizeof(b));}}return 0;}總結
以上是生活随笔為你收集整理的简单子串查找--strstr的使用(ZCMU1108)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 结构体排序二~1339: 考试排名(带技
- 下一篇: ZCMU 1048: 子串