讨论 / 求×!!!
zzqq2199 2012-07-29 01:10:00
点我顶贴 收藏 删除
状态: Unaccepted

测评机: Xeond[6]

得分: 40分

提交日期: 2012-7-29 16:05:00

有效耗时: 515毫秒

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

测试结果2: 测试结果错误.错误结果为:12

正确结果应为:13

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

测试结果4: 测试结果错误.错误结果为:123

正确结果应为:125

测试结果5: 测试结果错误.错误结果为:63

正确结果应为:65

//g[k,i,j] 字符串s从第i位到第j位分成k+1份的最多单词数

var

s,ss:string;

i,p,k,j,n,len:longint;

word:array[1..6] of string;

f:array[1..200,1..200] of longint;

g:array[0..20,1..200,1..200] of longint;

function sou(s:string):longint;

var i:longint;

begin

if s='' then exit(0);

for i:=1 to n do begin

if copy(s,1,length(word[i]))=word[i] then

exit(1+sou(copy(s,2,length(s)-1)));

end;

exit(sou(copy(s,2,length(s)-1)));

end;

begin

readln(p,k);

for i:=1 to p do begin

readln(ss);

s:=s+ss;

end;

p:=k;

readln(n);

len:=length(s);

for i:=1 to n do readln(word[i]);

for i:=1 to length(s) do

for j:=1 to length(s)-i+1 do

f[j,j+i-1]:=sou(copy(s,j,i));

g[0]:=f;

for k:=1 to p do

for i:=k+1 to len do

for j:=k to i-1 do

g[k,1,i]:=g[k-1,1,j] + f[j+1,i];

writeln(g[p-1,1,len]);

end.

查看更多回复
提交回复