View Code of Problem 3832

#include<stdio.h>
#include<string.h>

int main()
{
	long long i,j,k,m,m1,m2,l,alen,blen;
	char a[100005],b[100005];
	while(gets(a)!=NULL)
	{
		gets(b);
		alen=strlen(a);
		blen=strlen(b);
		j=0;
		k=-1;
		l=-1;
		m1=0;
		//题目规定了输入只包含小写字母,输入不会超过题目给的数据范围,不用判断合法性
		/*m2=1;
		for(i=0;i<alen;i++)
		{
			if(a[i]<'a'||a[i]>'z')
			{
				m2=0;
				break;
			}
		}
		for(i=0;i<blen;i++)
		{
			if(b[i]<'a'||b[i]>'z')
			{
				m2=0;
				break;
			}
		}
		if(alen>100000||blen>100000)
		{
			m2=0;
		}
		if(m2==0)
		{
			printf("-1\n");
			continue;
		}*/
		for(i=0;i<alen;i++)
		{
			j=0;
			if(a[i]==b[j])
			{
				m=i;
				m1=i;
				if(blen==1)
				{
					k=0;
				}
				for(j=1;j<blen;j++)
				{
					k=0;
					m1++;
					if(a[m1]!=b[j])
					{
						k=-1;
						break;
					} 	
				}
			}
			if(k==0)
			{
				l=0;
				printf("%lld\n",m+1);
				break;
			}
		}
		if(l==-1)
		{
			printf("-1\n");
		}
	}
	return 0;
} 

Double click to view unformatted code.


Back to problem 3832