时间限制: 1 s 空间限制: 128000 KB 题目等级 : 青铜 Bronze
题解 题目描述 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>#include<string.h>int main(){ char a[10000],b[1000];//获取a b串 scanf("%s%s",a,b); for(int i = 0;i<strlen(a);i++){//遍历a串 int t = 0; for(int j = i;j<i+strlen(b);j++){//从a串指定位置向后遍历,和b串进行比较,只要法出现不符合便break if(a[j]!=b[t++])break; if(j==i+strlen(b)-1){//如果符合输出当前位置即可 PRintf("%d",i+1); return 0; } } } return 0;}新闻热点
疑难解答