ACM PKU 1226 Substrings 较复杂字符串操作(但不繁琐)

http://acm.pku.edu.cn/JudgeOnline/problem?id=1226

注意几点: 1.对字符串复制使用strcpy和strncpy  2.strstr 查找子串; 3.strrev对字符串反序  4.strncpy后要在末尾加上'\0'   5.二维数组放在全局位置
 
#include"stdio.h"
#include
"string.h"

int n;
char str[100][100];
int searchMaxSubString(char * source)
{
    
int subStrLen=strlen(source),sourceStrLen=strlen(source);
    
int i,j;
    
bool foundMaxSubStr;
    
char subStr[101],revSubStr[101];

    
while(subStrLen>0)
    
{
        
for(i=0;i<=sourceStrLen-subStrLen;i++)
        
{
            strncpy(subStr,source
+i,subStrLen);
            strncpy(revSubStr,source
+i,subStrLen);
            subStr[subStrLen]
=revSubStr[subStrLen]='\0';
            strrev(revSubStr);
            
            foundMaxSubStr
=true;
            
for(j=0;j<n;j++)
                
if(strstr(str[j],subStr)==NULL&&strstr(str[j],revSubStr)==NULL){foundMaxSubStr=false;break;}
            
if(foundMaxSubStr) return subStrLen;

        }

        subStrLen
--;
    }

    
return 0;
}


void main()
{
    
int i,nCase,minStrLen,subStrLen;
    
char minStr[101];
    scanf(
"%d",&nCase);
    
while(nCase--)
    
{

    scanf(
"%d",&n);
    minStrLen
=101;
    
for(i=0;i<n;i++)
    
{
        scanf(
"%s",str[i]);
        
if(strlen(str[i])<minStrLen){strcpy(minStr,str[i]);minStrLen=strlen(minStr);}

    }

    printf(
"%d\n",searchMaxSubString(minStr));
    }

    
}

posted on 2007-11-13 15:46 流牛ζ木马 阅读(1958) 评论(5)  编辑 收藏 引用

评论

# re: ACM PKU 1226 Substrings 较复杂字符串操作(但不繁琐) 2008-07-24 10:28 T-MAC

拿了点东西!
就给点回贴的回报!
呵呵  回复  更多评论   

# re: ACM PKU 1226 Substrings 较复杂字符串操作(但不繁琐) 2009-01-05 14:45 风之伤

lz的变量名称起的很规范,代码风格不错。看起来很舒服,谢谢了~~帮点了广告了  回复  更多评论   

# re: ACM PKU 1226 Substrings 较复杂字符串操作(但不繁琐) 2009-02-26 22:48 iShowFun

果然大牛的代码就是简单,受教了,3Q3Q~^_^  回复  更多评论   

# re: ACM PKU 1226 Substrings 较复杂字符串操作(但不繁琐) 2009-08-25 11:17 Uriel

PKU上string .h 的strrev貌似不让用的?以前做字符串的题用了C++,C,GCC,G++交全部CE。。  回复  更多评论   

# re: ACM PKU 1226 Substrings 较复杂字符串操作(但不繁琐) 2010-04-11 22:31 草莓

谢谢 知识分析挺透彻 呵呵  回复  更多评论   


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理


<2009年3月>
22232425262728
1234567
891011121314
15161718192021
22232425262728
2930311234

导航

统计

公告

MY Email/MSN :mars1021@163.com QQ : 27402040 流牛ζ木马

常用链接

留言簿(6)

随笔档案

相册

搜索

最新随笔

最新评论

阅读排行榜

评论排行榜