[1204 寻找子串位置] 解题报告
来源:互联网 发布:阿里云幕布是免费的吗 编辑:程序博客网 时间:2024/05/17 07:37
题目描述 Description
给出字符串a和字符串b,保证b是a的一个子串,请你输出b在a中第一次出现的位置。
输入描述 Input Description
仅一行包含两个字符串a和b
输出描述 Output Description
仅一行一个整数
样例输入 Sample Input
abcd bc
样例输出 Sample Output
2
数据范围及提示 Data Size & Hint
字符串的长度均不超过100
Pascal用户请注意:两个字符串之间可能包含多个空格
#include <stdio.h>// 寻找子串位置inline int findSubStrLocation(int *str,int *subStr){ int *p = str,*q = NULL,*p_move = NULL; // p指向主串,p_temp为p的滑动指针,q指向子串 while (*p != '\0') { q = subStr; p_move = p; while (*q != '\0') { // 滑动匹配,滑动过程中出现不匹配直接跳出循环,如果一直匹配到最后一个字符则返回位置 if (*p_move != *q) { break; }else{ q++; p_move++; } if (*q == '\0') { return (int)(p - str + 1); } } p++; q = subStr; } return NULL;}int main(){ int str[100],subStr[100],i = 0; char temp = NULL; while ((temp = getchar()) != ' ') { str[i++] = temp; } str[i] = '\0'; i = 0; while ((temp = getchar()) != '\n') { if (temp != ' ') { // 中间多个空格处理 subStr[i++] = temp; } } subStr[i] = '\0'; printf("%d\n",findSubStrLocation(str,subStr)); return 0;}
0 0
- [1204 寻找子串位置] 解题报告
- 1204 寻找子串位置
- 1204 寻找子串位置
- 寻找子串位置
- 寻找子串位置
- 寻找子串位置
- WikiOI 1204 寻找子串位置
- [wikioi]1204 寻找子串位置
- wikioi 1204 寻找子串位置
- CODEVS 1204 寻找子串位置
- 【codevs】[1204]寻找子串位置
- 1204 寻找子串位置string使用
- codevs 1204 寻找子串位置
- code[vs] 1204 寻找子串位置
- 【codevs 1204】寻找子串位置
- 【codevs】1204 寻找子串位置
- codevs1204 寻找子串位置
- 寻找子串的位置
- 安卓 ListView Button、CheckBox、RadioButton 点击事件 覆盖的问题
- Linux 虚拟机中 安装 Squid代理服务器
- 面试技能六
- 移植ffmpeg到android的一个编译错误
- DefaultAnnotationHandlerMapping配置类和方法出现的问题
- [1204 寻找子串位置] 解题报告
- 子类和父类 构造函数和析构函数
- Eclipse中设置方法注释模板并使用方法注释
- 一步一步写算法(之循环和递归)
- osg与OpenCV图像互转
- 安装gcc-3.4.6.rpm
- 一个鼠标键盘控制两台甚至多台主机的方法(软件亲测可用)
- form不换行
- Android:apk反编译教程