首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
设一个环上有编号为0~n-1的n粒颜色不尽相同的珠子(每粒珠子颜色用字母表示,n粒珠子的颜色由输入的字符串表示)。从环上的某两粒珠子问剪开,则环上珠子形成一个序列然后按以下规则从序列中取走珠子:首先从序列左端取走所有连续的同色珠子;然后从序列右端在剩下的珠
设一个环上有编号为0~n-1的n粒颜色不尽相同的珠子(每粒珠子颜色用字母表示,n粒珠子的颜色由输入的字符串表示)。从环上的某两粒珠子问剪开,则环上珠子形成一个序列然后按以下规则从序列中取走珠子:首先从序列左端取走所有连续的同色珠子;然后从序列右端在剩下的珠
admin
2012-03-13
70
问题
设一个环上有编号为0~n-1的n粒颜色不尽相同的珠子(每粒珠子颜色用字母表示,n粒珠子的颜色由输入的字符串表示)。从环上的某两粒珠子问剪开,则环上珠子形成一个序列然后按以下规则从序列中取走珠子:首先从序列左端取走所有连续的同色珠子;然后从序列右端在剩下的珠子中取走所有连续的同色珠子,两者之和为该剪开处可取走珠子的粒数。在不同位置剪开,能取走的珠子也不尽相同。
本程序所求的是在环上哪个位置剪开,按上述规则可取走的珠子粒数最多。程序中用数组存储字符串。例如,10粒珠子颜色对应字符串为aaabbbadcc,在0号珠子前剪开,序列为aaabbbadcc,从左端取走3粒a色珠子,从右端取走2粒c色珠子,共取走5粒珠子。若在3号珠子前剪开,即bbbadccaaa,共取走6粒珠子。
[C函数]
int count(char *s,int start,int end)
{ int i,c=0,color:s[start],step=(start>end)?-1:1;
for(i=Start;s
==color;i+=step){
if(step>0 && i>end || (1) ) break;
(2) ;
}
return c;
}
void main()
{ char t,s[120];
int i,k,c,len,maxc,cut=0;
printf("请输入环上代表不同颜色珠子字符串:");
scanf("%s”,s);
len=strlen(s);
for(i=maxc=0; i<len;i++)( /*尝试不同的剪开方式*/
c=count(s,0,len-1);
if(c<len) c+=count( (3) );
if(c>maxc) { cut=i;maxc=c;)
/*数组s的元素循环向左移动一个位置*/
t=s[0];
for(j=1;j<len;j++) (4) ;
(5) ;
}
printf("在第%d号珠子前面剪开,可以取走%d个珠子.\n",cut,maxc);
}
选项
答案
(1)step<0 && i<end (2) ++c (3) s,len-1,c (4) s[j-1]=s[j] (5) s[len-1]=t
解析
依据取珠子个数最多的规则,count函数每次从左或从右取出相同颜色的珠子,因此从右到左的条件为step<0 && i<end,即(1)应填“step<0 && i<end”。当是同色珠子时,计数值加1,所以(2)填“++c”。从右到左计算时,函数count调用的实参次序为s,len-1,c。即(3)应填“s,len-1,c”。在尝试不同的剪开方式时,数组s的元素要循环向左移动一个位置,则(4)填“s[j-1]=s[j]”,(5)填“s[len-1]=t”。
转载请注明原文地址:https://kaotiyun.com/show/M6jZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
下面无助于加强计算机安全的措施是(19)。
在D盘中有一个文件,其文件名为“D:\信息处理技术员.DOC”,现需要在桌面上建立该文件的快捷方式,可用鼠标右键单击该文件图标,然后______。
在Access中使用参数查询时,应将条件栏中的参数提示文本写在(60)中。
在Excel中,设单元格A1中的值为100,B1中的值为200,A2中的值为300,B2中的值为400,若在A3单元格中输入函数“=SUM(A1:B2)”,按回车键后,A3单元格中的值为()。
(1)是固化在主板ROM内的程序,为计算机提供最底层、最直接的硬件访问和控制。
在Excel2007中,单元格中的绝对地址在被复制或移动到其他单元格时,其单元格地址(42)________________。
在PowerPoint中放映幻灯片时,如果在屏幕顶端出现了下图所示的窗口,则说明当前正在采用(59)功能。
某企业2007年的销售额比2006年提高了8.5%,但原计划只要求提高5%。该企业的销售额大致超额完成了计划的(27)。
在Windows系统中,控制面板的功能不包括______。
某计算机字长为8位,它用补码、原码或反码来表示带符号的二进制整数(最高一位为符号位),则机器代码11111111所表示的十进制真值分别为(4)、(5)或(6)。
随机试题
在CO2气体保护焊时,应先引弧再通气,才能使电弧稳定燃烧。
"ShallIhelpyouwiththewashingup?""Don’t______—I’lldoitlater."
A.滴水B.掠草C.膝眼D.穿黄E.顺气治疗牛胸黄宜选
甲女因抢劫杀人被逮捕,羁押期间不慎摔伤流产。1月后,甲被提起公诉。对甲的处理,下列哪一选项是正确的?(2010—卷二—9,单)
审核无误的原始凭证是登记账簿的唯一依据。()
学校教育具有开发个体特殊才能和___________的功能。
在公文的字体字号选用上,使用3号黑体字的要素包括()。
20世纪30年代,图灵提出计算机能够思维的观点,主张凡是能够通过“图灵测试”的计算机就能够思维。所谓“图灵测试”,就是说一个人如果不能判断与之对话的隐藏主体是人还是机器,我们就不得不承认即便是机器也能思维。“图灵测试”能否判断机器的思维,_________
实践是检验认识真理性的根本标准,这个标准是()
Eventhoughavant-gardeattacksontheVictorianbourgeoisiewere______inrhetoric,deficientinevidence,andmaliciousininte
最新回复
(
0
)