社区讨论

help

P1308[NOIP 2011 普及组] 统计单词数参与者 2已保存回复 1

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
1 条
当前快照
1 份
快照标识符
@lo2z4j22
此快照首次捕获于
2023/10/23 22:09
2 年前
此快照最后确认于
2023/10/23 22:09
2 年前
查看原帖
超时了....>o<....
CPP
#include<stdio.h>
#include<string.h>
#define maxn 1000000
char a[maxn];
int main()
{
	char s[10];
	scanf("%s",s);
	getchar();
	if(s[0]>='A'&&s[0]<='Z'){s[0]=s[0]-'A'+'a';}
	char c;int i=0;
	while(scanf("%c",&c)!=EOF){if(c>='A'&&c<='Z'){c=c-'A'+'a';}a[i]=c;i++;}
	//a[i]='\0';printf("%s",a);
	int count =0,m=1,e=0,f=0;
	for(int i=0;i<strlen(a);i++){
        if(s[0]!=a[i]){continue;}
		if(s[0]==a[i]&&(a[i+strlen(s)]==' '||a[i+strlen(s)]=='\n')&&(i==0||a[i-1]==' ')){
			for(int j=0;j<strlen(s);j++){
				if(s[j]!=a[i+j]){m=0;break;}
			}	if(m==1){count++;if(e==0){f=i;e=1;}}
			
		}m=1;
	}	
	if(count>0){printf("%d %d",count,f);}
	else{printf("-1");}
		
	return 0;
	
}

回复

1 条回复,欢迎继续交流。

正在加载回复...