社区讨论

求助大神,为什么只有80分??

P1308[NOIP 2011 普及组] 统计单词数参与者 3已保存回复 3

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
3 条
当前快照
1 份
快照标识符
@mi4g7hww
此快照首次捕获于
2025/11/18 18:46
4 个月前
此快照最后确认于
2025/11/18 18:46
4 个月前
查看原帖
CPP
function f(a,b:char):boolean;
begin
  if ord(a)<96 then a:=chr(ord(a)+32);
  if ord(b)<96 then b:=chr(ord(b)+32);
  if ord(a)=ord(b) then exit(true) else exit(false);
end;
var s:ansistring;t:string;a,b,h,i,j,k,c,x,y,z:longint;
    e:boolean;
begin
  for i:=1 to 15 do t[i]:='{';
  read(t);readln;read(s);readln;z:=maxlongint;
  x:=length(s);y:=length(t);c:=0;
  i:=1;e:=true;
while i<=x  do
begin
if i>1 then
begin
    if s[i-1]=' ' then
    begin
      h:=i;
      for j:=h to h+y do
      if f(s[j],t[j-h+1])=false then break;
      if (j=h+y)and(s[j]=' ')then
      begin
        if h<z then z:=h;
        inc(c); i:=h+y+1;
      end;
      h:=0;j:=0;inc(i);
    end else inc(i);
end else
begin
      h:=1;
      for j:=h to h+y do
      if f(s[j],t[j-h+1])=false then break;
      if (j=h+y)and(s[j]=' ')then
      begin
        if h<z then z:=h;
        inc(c); i:=h+y+1;
      end;
      h:=0;j:=0;inc(i);
end;
end;
  if c=0 then write('-1') else begin write(c,' ',z-1); end;
end.

回复

3 条回复,欢迎继续交流。

正在加载回复...