1 条题解

  • 0
    @ 2025-12-28 12:10:22
    #include<bits/stdc++.h>
    using namespace std;
    int a,b,k,mei,o;
    struct mm{
        int zh,x,y;  
    }n[1000005];
    bool cmp(mm x,mm y){
    	return x.zh>y.zh;
    }
    int main(){
        cin>>a>>b>>k;
        for(int i=1;i<=a;i++){
            for(int j=1;j<=b;j++){
                cin>>mei;
                if(mei>=1)n[++o].zh=mei,n[o].x=i,n[o].y=j;
            }        
        }
        sort(n+1,n+1+o,cmp);
        int x=0,y=n[1].y;
        int s=0,sum=0;
        for(int i=1;i<=o;i++){
        	if(s+abs(n[i].x-x)+abs(n[i].y-y)+1+n[i].x>k){
        		cout<<sum;
        		return 0;
        	}
        	sum+=n[i].zh;
        	s+=abs(n[i].x-x)+abs(n[i].y-y)+1;
        	x=n[i].x,y=n[i].y;
        }
        cout<<sum;
        return 0;
    } 
    
    • 1

    信息

    ID
    547
    时间
    1000ms
    内存
    128MiB
    难度
    6
    标签
    (无)
    递交数
    100
    已通过
    34
    上传者