当前位置: 首页 > news >正文

什么是商务网站餐饮vi设计开题报告范文

什么是商务网站,餐饮vi设计开题报告范文,建设信息港网站,住房和城乡建设部网站施工员题目 Cpp 【问题描述】 字符环(来源:NOI题库)。有两个由字符构成的环,请写一个程序,计算这两个字符环上最长公共字符串的长度。例如,字符串“ABCEFAGADEGKABUVKLM”的首尾连在一起,构成一个环&a…

题目

Cpp
【问题描述】
字符环(来源:NOI题库)。有两个由字符构成的环,请写一个程序,计算这两个字符环上最长公共字符串的长度。例如,字符串“ABCEFAGADEGKABUVKLM”的首尾连在一起,构成一个环;字符串”MADJKLUVKL”的首尾连在一起,构成另一个环;“UVKLMA”是这两个环的一个公共字符串。
【输入格式】
有两行,每行一个不包含空格的字符串,每行的字符串首尾相连即为一个环。
【输出格式】
一行,输出一个整数,表示这两个字符环上最长公共字符串的长度。
【输入样例】
ABCEFAGADEGKABUVKLM MADJKLUVKL
【输出样例】
6
【数据范围】
字符串长度不超过255


分析

就是找两个字符串的最大的连续交集。只不过字符串首尾相连


思路

其实要考虑的只不过是最后一位的下一位是第一位而已。这也很简单,直接将该字符串复制一份接到它后面即可。然后就可以循环找子集了。


代码

  1. 框架

    int main(){return 0;
    }
    

  2. 输入字符串

    #include<cstdio>	//scanf()
    char a[256], b[256]; 
    int main(){scanf("%s %s", &a, &b);return 0;
    }
    

  3. 拼接字符串
    注意,不能直接用strcat()函数拼接!

    #include<cstdio>	//scanf()
    #include<cstring>	//strcpy(), strcat(), memset()
    char a[256], b[256], c[256];
    int main(){scanf("%s %s", &a, &b);strcpy(c, a);strcat(a, c);memset(c, 0, sizeof(c));strcpy(c, b);strcat(b, c);return 0;
    }
    

  4. 遍历字符串a的子集(遍历头和尾,并同时求出子集)。详见该文张2.5版解题思路

    #include<cstdio>	//scanf()
    #include<cstring>	//strcpy(), strcat(), memset(), strlen()
    char a[256], b[256], c[256];
    int l;
    int main(){scanf("%s %s", &a, &b);strcpy(c, a);strcat(a, c);memset(c, 0, sizeof(c));strcpy(c, b);strcat(b, c);l=strlen(a);for(int i=0; i<l; i++){memset(c, 0, sizeof(c));for(int j=0; j<l-i; j++){c[j]=a[i+j];}}return 0;
    }
    

  5. 已经求出了一个字符串的子集,现在直接判断该子集是否同时存在于另一个字符串中。如果存在,就将该子集的长度比较存入变量中。

    #include<cstdio>	//scanf()
    #include<cstring>	//strcpy(), strcat(), memset(), strlen(), strstr()
    #include<cmath>		//fmax()
    char a[256], b[256], c[256];
    int l, ans;
    int main(){scanf("%s %s", &a, &b);strcpy(c, a);strcat(a, c);memset(c, 0, sizeof(c));strcpy(c, b);strcat(b, c);l=strlen(a);for(int i=0; i<l; i++){memset(c, 0, sizeof(c));for(int j=0; j<l-i; j++){c[j]=a[i+j];if(strstr(b, c)!=NULL){ans=fmax(ans, j+1);}}}return 0;
    }
    

  6. 最后,输出变量即可。

    #include<cstdio>	//scanf(), printf()
    #include<cstring>	//strcpy(), strcat(), memset(), strlen(), strstr()
    #include<cmath>		//fmax()
    char a[256], b[256], c[256];
    int l, ans;
    int main(){scanf("%s %s", &a, &b);strcpy(c, a);strcat(a, c);memset(c, 0, sizeof(c));strcpy(c, b);strcat(b, c);l=strlen(a);for(int i=0; i<l; i++){memset(c, 0, sizeof(c));for(int j=0; j<l-i; j++){c[j]=a[i+j];if(strstr(b, c)!=NULL){ans=fmax(ans, j+1);}}}printf("%d", ans);return 0;
    }
    


答案

#include<cstdio>
#include<cstring>
#include<cmath>
char a[256], b[256], c[256];
int l, ans;
int main(){scanf("%s %s", &a, &b);strcpy(c, a);strcat(a, c);memset(c, 0, sizeof(c));strcpy(c, b);strcat(b, c);l=strlen(a);for(int i=0; i<l; i++){memset(c, 0, sizeof(c));for(int j=0; j<l-i; j++){c[j]=a[i+j];if(strstr(b, c)!=NULL){ans=fmax(ans, j+1);}}}printf("%d", ans);return 0;
}

http://www.yayakq.cn/news/180535/

相关文章:

  • wordpress建站 图片西安建设工程中心交易网站
  • 沈阳大型网站建设全球搜索引擎入口
  • 外国网站上做雅思考试中宁企业网络推广联系人
  • 东台做网站的小程序游戏开发成本
  • 长安做网站公司国外办公室设计欣赏
  • 网站开发前准备360排名检测
  • 网站建设渠道电商网站建设 网站定制开发
  • 安全狗网站白名单指什么在线设计海报网站
  • 网站建设谈单流程网站建设 主要内容
  • 国外上国内网站很慢网站建设顶呱呱
  • 如何做网站建设方案深圳电商平台网站建设
  • 网站本地建设个人网站建设费用
  • 为新创业公司建设网站职业生涯规划大赛含金量
  • 深圳企业模板网站建设陕西建设信息网官网
  • vue.js做网站我国档案网站建设比较分析
  • 网站建设方案书 腾讯wordpress 恢复数据库 白屏
  • 怎么备案网站章丘网站建设哪家好
  • 网站建立不安全wordpress通知
  • 如何设计网站栏目公司电商网站开发合同范本
  • 做网站约需要多少钱wordpress js 统计代码
  • 坦桑尼亚网站域名后缀照片编辑器手机版
  • 博物馆网站建设方案网站的ppt方案怎么做
  • dedecms下载站怎么完整下载网站模板
  • 怎么有自己的网站软件工程考研方向有哪些
  • 手机网站开发工具 2018门户网站建设经验总结报告
  • 制作一个网站首页怎么做微信小程序
  • 网站建设工单系统护语配资网站建设多少钱
  • html5 制作手机网站页游排行榜前十名网络游戏
  • 网站有了订单邮箱提醒代码鲜花网站建设的项目介绍
  • 做网站封面素材图东莞企业网站建立报价