首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
设一个环上有编号为0~n-1的n粒颜色不尽相同的珠子(每粒珠子颜色用字母表示,n粒珠子的颜色由输入的字符串表示)。从环上的某两粒珠子问剪开,则环上珠子形成一个序列然后按以下规则从序列中取走珠子:首先从序列左端取走所有连续的同色珠子;然后从序列右端在剩下的珠
设一个环上有编号为0~n-1的n粒颜色不尽相同的珠子(每粒珠子颜色用字母表示,n粒珠子的颜色由输入的字符串表示)。从环上的某两粒珠子问剪开,则环上珠子形成一个序列然后按以下规则从序列中取走珠子:首先从序列左端取走所有连续的同色珠子;然后从序列右端在剩下的珠
admin
2012-03-13
85
问题
设一个环上有编号为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://www.kaotiyun.com/show/M6jZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
在Word2007中,若用户需要将一篇文章中的字符串“Internet”全部替换为字符串“因特网”,则可以在编辑菜单中选择()命令。
计算机运行一段时间后性能一般会有所下降,为此需要用优化工具对系统进行优化。系统优化的工作不包括()。
在Word中可以用“编辑”→“定位”命令对需要寻找的位置进行快速定位,(48)不属于定位目标。
Windows XP的许多应用程序的“文件”菜单中,都有“保存”和“另存为”两个命令。以下对这两个命令的叙述,正确的是(36)。
下图主板接口中,①处是(28),②处可以接的设备是(29),③处可以接的设备是(30)29.
某大型企业下属每个事业部都自行建立了信息系统,各自存储数据,各自配备了技术人员维护系统。由于数据格式不同,难以交流,各系统难以连接,形成了一个个信息孤岛,业务难以协同。为此,公司采取了以下一些整合措施,其中(70)并不恰当。
发送电子邮件属于信息处理的(33)过程。
综合布线系统由6个子系统组成,将图1-1中(1)~(6)处空缺子系统的名称填写在答题纸对应的解答栏内。考虑性能与价格因素,图1-1中(1)、(2)和(4)中各应采用什么传输介质?
以下(1)属于ASP.NET创建的网页程序文件。(1)A.index.aspB.index.htmC.index.aspxrs.close语句的作用是(10)。(10)A.关闭数据库连接B.关闭当前网页
某计算机字长为8位,它用补码、原码或反码来表示带符号的二进制整数(最高一位为符号位),则机器代码11111111所表示的十进制真值分别为(4)、(5)或(6)。
随机试题
如何检查冷暖风机?
Americansocietyisnotnap(午睡)friendly.Infact,saysDavidDinges,asleepspecialistattheUniversityofPennsylvaniaSchool
风湿性心脏病多见于哪种面容()
尿少,口干,皮肤弹性稍差,血压为11.3/7.7kPa,呼吸深快,口唇樱红,前囟门凹陷,心音低钝,肺无哕音,腹胀,四肢无力、稍凉,血钠132mmol/L。可能的诊断是
下列技术手段中,对建筑室外微气候环境的调节影响小的是()。
甲是乙公司依法设立的分公司。下列表述中,符合公司法律制度规定的是()。
前期物业服务合同的主要内容包括()①合同的当事人;②物业基本情况;③服务内容与质量;④服务费用;⑤物业的经营与管理;
两根同样长的蜡烛,点完粗蜡烛要3小时,点完细蜡烛要1小时。同时点燃两根蜡烛,一段时间后,同时熄灭,发现粗蜡烛的长度是细蜡烛的3倍。问两根蜡烛燃烧了多长时间?
被称为继五四运动和延安整风运动之后又一场马克思主义思想解放运动的是()
IfyouwanttoknowwhyDenmarkistheworld’sleaderinwindpower,startwithathree-hourcartripfromthecapitalCopenhage
最新回复
(
0
)