2014年决赛CC本科B组
1结果填空满分10分
标题:年龄巧合小明和他的表弟一起去看电影,有人问他们的年龄。小明说:今年是我们的幸运年
啊。我出生年份的四位数字加起来刚好是我的年龄。表弟的也是如此。已知今年是2014年,并且,小明说的年龄指的是周岁。
请推断并填写出小明的出生年份。这是一个4位整数,请通过浏览器提交答案,不要填写任何多余的容(比如,他表弟的出生年份,或是他们的年龄等等)
2结果填空满分25分
标题:出栈次序X星球特别讲究秩序,所有道路都是单行线。一个甲壳虫车队,共16辆车,按照
编号先后发车,夹在其它车流中,缓缓前行。路边有个死同,只能容一辆车通过,是临时的检查站,如图【p1p
g】所示。X星球太死板,要求每辆路过的车必须进入检查站,也可能不检查就放行,也可能
仔细检查。如果车辆进入检查站和离开的次序可以任意交错。那么,该车队再次上路后,可能
的次序有多少种?为了方便起见,假设检查站可容纳任意数量的汽车。显然,如果车队只有1辆车,可能次序1种;2辆车可能次序2种;3辆车可能次
序5种。现在足足有16辆车啊,亲!需要你计算出可能次序的数目。这是一个整数,请通过浏览器提交答案,不要填写任何多余的容(比如说明性文字)。
f3代码填空满分35分
标题:信号匹配
从X星球接收了一个数字信号序列。
现有一个已知的样板序列。需要在信号序列中查找它首次出现的位置。这类似于串的匹配操作。
如果信号序列较长,样板序列中重复数字较多,就应当注意比较的策略了。可以仿照串的KMP算法,进行无回溯的匹配。这种匹配方法的关键是构造
ext数组。
exti表示第i项比较失配时,样板序列向右滑动,需要重新比较的项的序号。如果为1,表示母序列可以进入失配位置的下一个位置进行新的比较。
下面的代码实现了这个功能,请仔细阅读源码,推断划线位置缺失的代码。
生成
ext数组i
tmake_
exti
tpai
tp
i
t
exti
tmallocsizeofi
tp
ext01i
tj0i
tk1whilejp
1
ifk1pajpak
fjk
extjkelsek
extk
retur
ext
da中搜索pa,da的长度为a
pa的长度为p
i
tfi
di
tdai
ta
i
tpai
tp
i
trst1i
t
extmake_
extpap
i
ti0da中的指针i
tj0pa中的指针i
t
0whileia
ifdaipajj1
ijelse__________________________填空位置
ifjp
rstip
break
free
ext
retur
rst
i
tmai
i
tda121211212112112112121121121112123i
tr