#include<stdio.h>
#include<string.h>
char a[500][10000];
int main(){
int i=0,j;
char *ptr,b[10000];
while(gets(b)!=NULL){
for(j=0;j<i;j++){
if(strcmp(b,a[j])==0){
printf("YES\n");
goto jump;
}
}
for(j=0;j<strlen(b);j++){
ptr=&b[j];
a[i][j]=*ptr;
ptr++;
}
printf("NO\n");
i++;
jump:;
}
}
如果你每次都從頭找,時間會比較久。
假設我開 26 個陣列
第 1 個只存 A 開頭的 str
第 2 個只存 B 開頭的 str
遇到 A 開頭的字串就存到 A 使用的陣列
查字串的時候,也是到相對應的陣列找,
應該可以省些時間。
如果你每次都從頭找,時間會比較久。
假設我開 26 個陣列
第 1 個只存 A 開頭的 str
第 2 個只存 B 開頭的 str
遇到 A 開頭的字串就存到 A 使用的陣列
查字串的時候,也是到相對應的陣列找,
應該可以省些時間。
謝謝你,我再試試看!!