比赛 暑假培训B班二测 评测结果 MMMMMMMM
题目名称 劣质的草 最终得分 0
用户昵称 英雄寞乌云然 运行时间 0.000 s
代码语言 Pascal 内存使用 0.00 MiB
提交时间 2012-07-22 11:16:34
显示代码纯文本
  1. program fl;
  2. var
  3. r,z:array[0..10000,0..10000] of longint;
  4. t:array[1..9999] of integer;
  5. a,b,c,d,m,n,ys,zd,fx,x,y,mj,yb,yl,u:longint;
  6. procedure color(x,y,w:longint);
  7. var h,i,j,k,ls:longint;
  8. begin
  9. if (x<>0) and (x<(m+1)) then
  10. if (y<>0) and (y<(n+1)) then
  11. if z[x,y]=0 then
  12. begin
  13. z[x,y]:=1;
  14. if (r[x-1,y]<>0) and (z[x-1,y]<>1)then color(x-1,y,w);
  15.  
  16. if (r[x-1,y+1]<>0) and (z[x-1,y+1]<>1)then color(x-1,y+1,w);
  17.  
  18. if (r[x,y+1]<>0) and (z[x,y+1]<>1)then color(x,y+1,w);
  19.  
  20. if (r[x+1,y+1]<>0) and (z[x+1,y+1]<>1)then color(x+1,y+1,w);
  21.  
  22. if (r[x+1,y]<>0) and (z[x+1,y]<>1)then color(x+1,y,w);
  23.  
  24. if (r[x+1,y-1]<>0) and (z[x+1,y-1]<>1)then color(x+1,y-1,w);
  25.  
  26. if (r[x,y-1]<>0) and (z[x,y-1]<>1)then color(x,y-1,w);
  27.  
  28. if (r[x-1,y-1]<>0) and (z[x-1,y-1]<>1)then color(x-1,y-1,w);
  29. end;
  30.  
  31. end;
  32.  
  33. begin
  34. assign(input,'badgras.in');
  35. reset(input);
  36. assign(output,'badgras.out');
  37. rewrite(output);
  38. read(n,m);
  39. for a:=1 to n do
  40. for b:=1 to m do
  41. begin read(d); r[b,a]:=d; end;
  42. {=================================================}
  43. ys:=0; zd:=0;
  44. for a:=1 to n do
  45. for b:=1 to m do
  46. if r[b,a]<>0 then
  47. if z[b,a]<>1 then
  48. begin
  49. ys:=ys+1;
  50. color(b,a,ys);
  51. end;
  52.  
  53. {=================================================}
  54.  
  55. write(ys);
  56. {=================================================}
  57. close(input);
  58. close(output);
  59. end.
  60.