程序员王斌爱玩原神 • 3个月前
using namespace std; int n,m,k,i,j,ans,a[1001][1001],b[1001],nx,ny,x[1001],y[1001]; int main(){
cin>>n>>m>>k;
for(i=1;i<=n;i++){
for(j=1;j<=m;j++){
cin>>a[i][j];
b[(i-1)*m+j]=a[i][j];
x[(i-1)*m+j]=i;
y[(i-1)*m+j]=j;
}
}
if(n==1&&m==1){
cout<<b[1];
return 0;
}
for(i=1;i<=n*m;i++){
for(j=i+1;j<=n*m;j++){
if(b[i]<b[j]){
swap(b[i],b[j]);
swap(x[i],x[j]);
swap(y[i],y[j]);
}
}
}
nx=0,ny=y[1];
for(i=1;i<=n*m;i++){
if(k>=x[i]+abs(nx-x[i])+abs(ny-y[i])+1){
k-=(abs(nx-x[i])+abs(ny-y[i])+1);
nx=x[i];
ny=y[i];
ans+=b[i];
}else{
cout<<ans;
return 0;
}
}
}
评论:
请先登录,才能进行评论