Cod sursa(job #3219525)

Utilizator Dia3141Costea Diana Stefania Dia3141 Data 31 martie 2024 16:26:49
Problema Elimin Scor 70
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.94 kb
#include <fstream>
#include <algorithm>
using namespace std;
ifstream cin("elimin.in");
ofstream cout("elimin.out");
int n,m,L,C,a[7300][7300];
bool frl[7300];
long long Max,sum,sc[7300],total;
long long sol(){
    long long s=0;
    for(int i=1;i<=m;i++)
        sc[i]=0;
    for(int i=1;i<=n;i++)
        if(!frl[i])
            for(int j=1;j<=m;j++){
                sc[j]+=a[i][j];
                s+=a[i][j];
            }
    sort(sc+1,sc+m+1);
    for(int j=1;j<=C;j++)
        s-=sc[j];
    return s;
}
void lini(int k,int last){
    if(k==L+1){
        int s=sol();
        if(s>Max)
            Max=s;
    }else{
        for(int i=last+1;i<=n;i++){
            frl[i]=1;
            lini(k+1,i);
            frl[i]=0;
        }
    }
}
int main()
{
    cin>>n>>m>>L>>C;
    for(int i=1;i<=n;i++)
        for(int j=1;j<=m;j++){
            cin>>a[i][j];
        }
    lini(1,0);
    cout<<Max;
    return 0;
}