poj 3630
思路:用qsort对字符串数组进行排序,由于父串与子串相邻,则只要比较相邻串是否符合就行了(通过比较相邻字符串长度,选择长度小的作为判断长度)
这次掌握了对字符串数组的快排;
不过还有人用trie树来做的,目前还不会。
用到的部分代码:
qsort(num,n,sizeof(num[0]),cmp); for(i=0;i<n;i++) len[i]=strlen(num[i]); for(i=0;i<n-1;i++) { length=len[i]<len[i+1]?len[i]:len[i+1]; ok=0; for(k=0;k<length;k++) if(num[i][k]!=num[i+1][k]) { ok=1; break; } if(!ok) break; } if(!ok) printf("NO\n");
/**************************************************************************
                 
原文来自博客园——Submarinex的博客: www.cnblogs.com/submarinex/               
 
*************************************************************************/