早教吧作业答案频道 -->其他-->
跪求编程大神速速帮忙解决,算法设计判断单词接龙.汉语里面有词语接龙,如“喜大普奔->奔走相告”,在英文中由于英文单词长度不不一,有所变化,规定前一个单词尾部若干个字母与后一个单
题目详情
跪求编程大神速速帮忙解决,算法设计判断单词接龙.
汉语里面有词语接龙,如“喜大普奔->奔走相告”,在英文中由于英文单词长度不不一,有所变化,规定前一个单词尾部若干个字母与后一个单词的开头若干个字母相同,则接龙成功,如romantic, anticlimax两个单词可接龙,称’antic’ 为连接串,而committee,eerily,其连接串是’e’、’ee’,设计一个算法,判断两个词是否能够“接龙”成功,如果能接龙,则求取最大长度的“连接串”.选择擅长的程序设计语言,实现该算法并分析其算法复杂度.(单词由小写英文字母组成,最多不超过5000个字符).
例1.
输入:romantic //第1行
anticlimax//第2行
输出:antic
列2:
输入:committee
eerily
输出:ee
例3
输入:come
October
输出:接龙不成功
例4:
输入:mama
mamaliga
输出:mama
汉语里面有词语接龙,如“喜大普奔->奔走相告”,在英文中由于英文单词长度不不一,有所变化,规定前一个单词尾部若干个字母与后一个单词的开头若干个字母相同,则接龙成功,如romantic, anticlimax两个单词可接龙,称’antic’ 为连接串,而committee,eerily,其连接串是’e’、’ee’,设计一个算法,判断两个词是否能够“接龙”成功,如果能接龙,则求取最大长度的“连接串”.选择擅长的程序设计语言,实现该算法并分析其算法复杂度.(单词由小写英文字母组成,最多不超过5000个字符).
例1.
输入:romantic //第1行
anticlimax//第2行
输出:antic
列2:
输入:committee
eerily
输出:ee
例3
输入:come
October
输出:接龙不成功
例4:
输入:mama
mamaliga
输出:mama
▼优质解答
答案和解析
int main()
{
char first[20] = {0};
char second[20] = {0};
char key[20] = {0};
//input
printf("please input first word:");
scanf("%s", first);
printf("please input second word:");
scanf("%s", second);
//begin
bool found = false;
for (int i = 0; i < 20; i ++)
{
char tmp = first[i];
if (tmp == second[0])
{
found = true;
}
if (found == true)
{
int len = 0;
for (int l = i, j = 0; l < 20, j < 20; l ++, j ++)
{
if (first[l] != 0)
{
key[j] = first[l];
len ++;
}
else
break;
}
for (int j = 0; j < len; j ++)
{
if (key[j] != second[j])
{
found = false;
memset(key, 0x00, sizeof(key)/sizeof(key[0]));
}
}
if (found)
printf("the max keyword is: %s \n", key);
else
printf("can not found the key word! \n");
}
}
return 0;
}
{
char first[20] = {0};
char second[20] = {0};
char key[20] = {0};
//input
printf("please input first word:");
scanf("%s", first);
printf("please input second word:");
scanf("%s", second);
//begin
bool found = false;
for (int i = 0; i < 20; i ++)
{
char tmp = first[i];
if (tmp == second[0])
{
found = true;
}
if (found == true)
{
int len = 0;
for (int l = i, j = 0; l < 20, j < 20; l ++, j ++)
{
if (first[l] != 0)
{
key[j] = first[l];
len ++;
}
else
break;
}
for (int j = 0; j < len; j ++)
{
if (key[j] != second[j])
{
found = false;
memset(key, 0x00, sizeof(key)/sizeof(key[0]));
}
}
if (found)
printf("the max keyword is: %s \n", key);
else
printf("can not found the key word! \n");
}
}
return 0;
}
看了跪求编程大神速速帮忙解决,算法...的网友还看了以下:
战神金刚造型有版权吗战神金刚本身是不存在的,它是由五个小狮子组成的,组成脚和腿,组成躯干和手臂,组 2020-05-17 …
人民网载文说,农村文化建设存在的主要问题首先表现在文化生活匮乏,内容不丰富,形式单一,范围不广泛, 2020-06-26 …
依次填入下面一段文字横线处的词语,最恰当的一项是()选择简单、宁静生活的人,无意追逐物质层面的,只 2020-07-05 …
英语翻译行文之道,神(文章的内在精神)为主,气(文章的气势)辅之.曹子恒、苏子由论文,以气为主,是 2020-07-23 …
高三生物神经结跟神经元虽然神经结在传入神经上面但是可以把神经结看作一个单独的神经元吗? 2020-11-03 …
阅读下面的材料,按要求作文。2016年里约奥运会上,中国女排力克强敌最终夺取桂冠,举国欢庆。“女排精 2020-11-27 …
19.阅读下面的材料,按要求作文。2016年里约奥运会上,中国女排力克强敌最终夺取桂冠,举国欢庆。“ 2020-11-27 …
当前农村文化建设存在文化生活匮乏、内容不丰富、形式单一等问题,不断满足广大农民群众的精神生活需求,在 2020-12-18 …
双百人物评选活动属于精神文化建设中的文明,它在精神文明建设中属于什么设立国家最高科技类属于精神文明建 2021-01-01 …
农村文化建设存在的主要问题首先表现在文化生活匮乏,内容不丰富,形式单一,范围不广泛,不能满足广大农民 2021-01-13 …