c语言中cstring头文件不能用,因为cstring头文件里面有一个神器 strstr「建议收藏」

c语言中cstring头文件不能用,因为cstring头文件里面有一个神器 strstr「建议收藏」Output32GATACCAGATACCAGATACCAGATACCAGATACCAGATACCAGATACCAGATACCAGATAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA3GATACCAGATACCAGATACCAGATACCAGATACCAGATACCAGATACCAGATACCAGATAGATACTAGATA…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

Output

3

2

GATACCAGATACCAGATACCAGATACCAGATACCAGATACCAGATACCAGATACCAGATA

AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

3

GATACCAGATACCAGATACCAGATACCAGATACCAGATACCAGATACCAGATACCAGATA

GATACTAGATACTAGATACTAGATACTAAAGGAAAGGGAAAAGGGGAAAAAGGGGGAAAA

GATACCAGATACCAGATACCAGATACCAAAGGAAAGGGAAAAGGGGAAAAAGGGGGAAAA

3

CATCATCATCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC

ACATCATCATAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

AACATCATCATTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT

Sample Output

Sample Input

题目链接:

题意是:

给n个字符串然后找出n个字符串里面最长的公共字串。。

这道题目最开始以为是dp,后来又以为是kmp,但是kmp貌似没看到过这么多字符串相匹配的,后来就搜题解,太弱了,只能看别人题解。。

思路是:

首先看数据大小,最多只有10个串,那么把第一个串当作母串,然后逐个去枚举母串中的子串,然后根据字串去其他n-1个DNA序列中检测,看是否这些子串在其他DNA序列中存在,然后把第一个母串中所有的的字串进行枚举,得到所有字符串都满足的最长公共字串,如果存在相同的子串,那么选取字典序最小的那个。。这样这题就已暴力的方式得到了解决。。然后就是找枚举的字串在其他DNA序列中不需要像BF算法那样一个个好,然后回溯,因为cstring头文件里面有一个神器

strstr。。这回真是开了眼界了。。。

题目:

Blue Jeans

Time Limit: 1000MS

Memory Limit: 65536K

Total Submissions: 12149

Accepted: 5266

The

Genographic Project is a research partnership between IBM and The

National Geographic Society that is analyzing DNA from hundreds of

thousands of contributors to map how the Earth was

populated. As an IBM researcher, you have been tasked with writing a program

that will find commonalities amongst given snippets of DNA that can

be correlated with individual survey information to identify new

genetic markers. A DNA base sequence is noted by listing the nitrogen bases in the

order in which they are found in the molecule. There are four

bases: adenine (A), thymine (T), guanine (G), and cytosine (C). A

6-base DNA sequence could be represented as

TAGACC. Given a set of DNA base sequences, determine the longest series of

bases that occurs in all of the sequences.

no significant commonalities

AGATAC

CATCATCAT

Source

Input

代码为:

#include

#include

#include

#include

using namespace std;

const int len=60;

char DNA[10+10][len+1];

char ans[len+1],Copy[len+1];

int ans_length,length;

int main()

{

int t,n,pd,flag,i,j,k,count;

scanf(“%d”,&t);

while(t–)

{

count=0;

scanf(“%d”,&n);

for(int i=1;i<=n;i++)

scanf(“%s”,DNA[i]);

ans_length=-1;

length=1;

for(i=0;;i++)

{

flag=1;

pd=i;

if(pd+length>len)//判断序列是否越界

{

length++;

i=-1;

if(length>len)

break;

continue;

}

for(j=0;j<=n;k++)

{

if(!strstr(DNA[k],Copy))//str函数是c语言自带的一个函数,意思是Copy数组是否在DNA[K]中出现过,其实这个可以用kmp来判断,但是我们有这么方便的函数,和乐而不为呢??

{

flag=0;

break;

}

}

if(flag)

{

if(length==ans_length)

{

if(strcmp(ans,Copy)>0)

strcpy(ans,Copy);

}

if(length>ans_length)

{

ans_length=length;

strcpy(ans,Copy);

}

}

}

if(ans_length<3)

printf(“no significant commonalities\n”);

else

printf(“%s\n”,ans);

}

return 0;

}

For

each dataset in the input, output the longest base subsequence

common to all of the given base sequences. If the longest common

subsequence is less than three bases in length, display the string

“no significant commonalities” instead. If multiple subsequences of

the same longest length exist, output only the subsequence that

comes first in alphabetical order.

Description

Input

to this problem will begin with a line containing a single integer

n indicating the number of datasets. Each dataset consists of the

following components:

A single positive integer m (2 <= m <= 10) indicating the

number of base sequences in this dataset.

m lines each containing a single base sequence consisting of 60

bases.

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/194343.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • openCV中cvSnakeImage()函数代码分析

    openCV中cvSnakeImage()函数代码分析/*M///////////////////////////////////////////////////////////////////////////////////////////IMPOR

    2022年7月3日
    21
  • u盘无法格式化怎么办?5种方法完美解决_U盘无法格式化怎么办

    u盘无法格式化怎么办?5种方法完美解决_U盘无法格式化怎么办今年暑假买的U盘,16G,突然某一天发现它要跪掉了。每次插上电脑都要显示格式化,一点击”格式化却显示“无法完成格式化”。当时真的想把电脑和U盘一起砸掉。。。。。然后在网上找了很多自称很牛逼的低级格式化的软件,还是败北了。后来用了这个软件 ChipGenius4.0   (http://dl.pconline.com.cn/html_2/1/60/id=50720&pn=0&linkPage=1.h

    2025年10月13日
    1
  • xgboost原理分析以及实践

    xgboost原理分析以及实践摘要本文在写完GBDT的三篇文章后本来就想写的,但一直没有时间,终于刚好碰上需要,有空来写这篇关于xgboost原理以及一些实践的东西(这里实践不是指给出代码然后跑结果,而是我们来手动算一算整个xgboost流程)由于网上已经许多优秀的文章对xgboost原理进行了详细的介绍,特别是xgboost作者陈天奇的论文以及slide已经非常完整阐述了整个xgboost的来龙去脉,现有的文章基本也…

    2022年6月6日
    76
  • amos路径分析结果解读_swot模型个人分析

    amos路径分析结果解读_swot模型个人分析基于Amos的路径分析与模型参数详解1数据准备1.1数据格式转换2结构方程模型建立2.1变量相互关系确定2.2路径图绘制2.3数据导入3模型运行与结果3.1模型方法参数选择3.2模型输出参数选择3.3模型运行3.4模型结果1数据准备  本文所用数据包括某地百余个土壤采样点对应的一种土壤属性含量变量(BC)及与其有关的5种环境变量(Temp,Slope,Roden,POI,GAIA),存储于“xlsx”文件内。由于本文所用的土壤采样点空间数据集并不是我的,因此

    2022年8月24日
    13
  • 安装PHPMYADMIN IN UBUNTU

    安装PHPMYADMIN IN UBUNTU

    2021年4月29日
    103
  • J2SE初识「建议收藏」

    J2SE初识「建议收藏」什么是J2SE?J2SE和Java有什么关系?什么是Java2?这三者有什么联系?为什么要有Java2?J2SE?我用一张图来解释其实Java2是Java的第二代J2SE是Java2的标准版,主要用于桌面应用软件的编程J2EE是Java2的企业版,主要用户分布式的网络程序开发,比如电子商务网站J2ME是Java2的微缩版,主要

    2025年6月12日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号