讨论 / 这都TLE?
oopp 2011-02-12 19:40:00
点我顶贴 收藏 删除

题目编号:382-自然的谜语 查看该题

状态: Unaccepted

测评机: Xeost[5]

得分: 80分

提交日期: 2009-10-15 17:23:00

有效耗时: 1311毫秒

测试结果1: 通过本测试点|有效耗时156ms

测试结果2: 通过本测试点|有效耗时47ms

测试结果3: 通过本测试点|有效耗时47ms

测试结果4: 通过本测试点|有效耗时187ms

测试结果5: 通过本测试点|有效耗时203ms

测试结果6: 通过本测试点|有效耗时281ms

测试结果7: 通过本测试点|有效耗时203ms

测试结果8: 通过本测试点|有效耗时187ms

测试结果9: 选手程序运行超过时限

测试结果10: 输出过少|用户输出数据少于标准输出的50%[标准输出338906位|选手输出1400位]

提交代码: var s1,s2:ansistring;

sum,k,n,i:longint;

a:array[1..1000000] of longint;

begin

readln(s1);

readln(s2);

repeat

n:=pos(s1,s2);

if n>0 then begin

s2:=copy(s2,n+1,length(s2)-n);

inc(k);

a[k]:=n+sum;

inc(sum,n);

end;

until n=0;

if k>0 then begin

writeln(k);

for i:=1 to k do

writeln(a[i]);end

else write(’There must be something wrong.’);

end.

忘分了~

#1 zsx@2009-11-07 04:09:00
回复 删除
POS()的效率 好像有点低
#2 webeskycn@2009-11-07 17:09:00
回复 删除
ansistring好像有点慢...
#3 lxl@2011-02-12 19:40:00
回复 删除
回复 楼主oopp 的帖子

一定要用KMP算法,否则无法通过。

查看更多回复
提交回复