zoukankan      html  css  js  c++  java
  • 30:字符环

    30:字符环
    总时间限制: 1000ms 内存限制: 65536kB
    描述
    有两个由字符构成的环。请写一个程序,计算这两个字符环上最长连续公共字符串的长度。
    例如,字符串“ABCEFAGADEGKABUVKLM”的首尾连在一起,构成一个环;
    字符串“MADJKLUVKL”的首尾连在一起,构成一个另一个环;
    “UVKLMA”是这两个环的一个连续公共字符串。

    输入
    一行,包含两个字符串,分别对应一个字符环。这两个字符串之间用单个空格分开。
    字符串长度不超过255,且不包含空格等空白符。
    输出
    输出一个整数,表示这两个字符环上最长公共字符串的长度。
    样例输入
    ABCEFAGADEGKABUVKLM MADJKLUVKL
    样例输出
    6

    我想不出什么好的方法,直接爆力枚举吧

     1 #include <stdio.h>
     2 #include <string.h>
     3 
     4 int main()
     5 {
     6     char a[1000],A[1000],b[1000],B[1000];
     7     int lenA,lenB,minLen,temp=0;
     8     int i,j;
     9     int ans=0;
    10 
    11     scanf("%s%s",a,b);
    12     lenA=strlen(a);
    13     lenB=strlen(b);
    14     minLen=(lenA<lenB?lenA:lenB);
    15     strcpy(A,a);
    16     strcpy(B,b);
    17     strcat(A,a);//环
    18     strcat(B,b);
    19 
    20     for(i=0;i<lenA;i++)
    21     {
    22         for(j=0;j<lenB;j++)
    23         {
    24             while(A[i+temp]==B[j+temp]&&temp<=minLen) temp++;
    25             ans=(temp>ans?temp:ans);
    26             temp=0;
    27         }
    28     }
    29     minLen=(lenA<lenB?lenA:lenB);
    30     ans=(minLen<ans?minLen:ans);
    31     printf("%d
    ",ans);
    32     return 0;
    33 }
  • 相关阅读:
    PHP开发调试环境配置(基于wampserver+Eclipse for PHP Developers )
    关于汽车
    PCB 敷铜间距规则(转)
    有同感的话
    kubernetes学习之二进制部署1.16
    kubernetes网络之Flannel
    Kubernetes学习之原理
    Kubernetes学习之基础概念
    Centos7配置Grafana对接OpenLDAP
    Centos7安装OpenLDAP
  • 原文地址:https://www.cnblogs.com/huashanqingzhu/p/5614957.html
Copyright © 2011-2022 走看看