花生采摘

来源:互联网 发布:移动4g网络最近怎么了 编辑:程序博客网 时间:2024/04/25 18:32
var
 num,h,s:array[1..1000]of longint;
 i,j,n,t,m,k,sum,ans,x,y:longint;
begin
 read(n,m,k);
 for i:=1 to n do
  for j:=1 to m do
 begin
  read(x);
  if x<>0 then
   begin
    inc(sum);
    num[sum]:=x;
    h[sum]:=i;
    s[sum]:=j;
   end;
  end;
 for i:=1 to sum-1 do
  for j:=i+1 to sum do
  if num[i]<num[j] then
  begin
   t:=num[i]; num[i]:=num[j]; num[j]:=t;
   t:=h[i]; h[i]:=h[j]; h[j]:=t;
   t:=s[i]; s[i]:=s[j]; s[j]:=t;
  end;
 x:=0; y:=s[1];
 for i:=1 to sum do
  if k-(abs(h[i]-x)+abs(s[i]-y))-h[i]>0 then
  begin
   ans:=ans+num[i];
   k:=k-(abs(h[i]-x)+abs(s[i]-y));
   dec(k);
   x:=h[i]; y:=s[i];
  end
  else break;
  write(ans);
end.
1 0
原创粉丝点击