为什么错最后一个点?

Program Raoyu;

Var N,Len,I:Integer;

St:String;

Function Check(St:String):Boolean; //AABB

Var P1,P2,P3,P4:Integer;

Begin

For P1:=1 to Len-3 do

For P2:=P1+1 to Len-2 do

For P3:=P2+1 to Len-1 do

For P4:=P3+1 to Len do

If((St[P1]=St[P2])And(St[P3]=St[P4]))

Or((St[P1]=St[P4])And(St[P2]=St[P3]))Then

Exit(False);

Exit(True);

End;

Begin

Readln(N);

For I:=1 to N do

Begin

Readln(St);

While(St[Length(St)]=' ')Do

Delete(St,Length(St),1);

Len:=Length(St);

If(Check(St))Then

Writeln('safe')

Else

Writeln('de1ete');

End;

End.

编译通过...

├ 测试数据 01:答案正确... 0ms

├ 测试数据 02:答案正确... 0ms

├ 测试数据 03:答案正确... 0ms

├ 测试数据 04:答案正确... 0ms

├ 测试数据 05:答案正确... 0ms

├ 测试数据 06:答案正确... 0ms

├ 测试数据 07:答案正确... 0ms

├ 测试数据 08:答案正确... 0ms

├ 测试数据 09:答案正确... 0ms

├ 测试数据 10:答案错误...

 ├ 标准行输出 de1ete

 ├ 错误行输出 safe

---|---|---|---|---|---|---|---|-

Unaccepted 有效得分:90 有效耗时:0ms

1 条评论

  • @ 2009-07-23 22:45:01

    知道了

    在调用st[i]时一定要先写 (i

  • 1

信息

ID
1482
难度
6
分类
字符串 | 模拟 点击显示
标签
递交数
1243
已通过
314
通过率
25%
被复制
2
上传者