Cod sursa(job #3362465)

Utilizator RaduBalasRadu Andrei Balas RaduBalas Data 9 august 2026 11:07:44
Problema Elimin Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.15 kb
#include <bits/stdc++.h>
using namespace std;
int v[100],sum[7300],a[100][7300];
int main(){
    ifstream cin("elimin.in");
    ofstream cout("elimin.out");
    int n,m,i,j,k,r,c,nr,cnt,sol,ans,l;
    cin >> n >> m >> r >> c;
    if(n<=m){
        for(i=1;i<=n;i++)
            for(j=1;j<=m;j++)
                cin >> a[i][j];
    }
    else{
        for(j=n;j>=1;j--)
            for(i=1;i<=m;i++)
                cin >> a[i][j];
        swap(n,m);
        swap(r,c);
    }
    nr=(1<<n);
    ans=0;
    for(l=0;l<=nr;l++){
        j=1;
        while(v[j]==1&&j<=n){
            v[j]=0;
            j++;
        }
        v[j]=1;
        cnt=0;
        for(j=1;j<=n;j++)
            if (v[j]==1)
                cnt++;
        if(cnt==r){
            for(i=1;i<=m;i++)
                sum[i]=0;
            for(i=1;i<=n;i++)
                if (v[i]==0)
                    for (j=1;j<=m;j++)
                        sum[j]+=a[i][j];
            sort(sum+1,sum+m+1);
            sol=0;
            for(j=m;j>c;j--)
                sol=sol+sum[j];
            ans=max(ans,sol);
        }
    }
    cout << ans;
    return 0;
}