Cod sursa(job #654026)

Utilizator dutzulBodnariuc Dan Alexandru dutzul Data 29 decembrie 2011 13:33:19
Problema Elimin Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.06 kb
#include <fstream>
#include <algorithm>
#include <cstdlib>
#include <ctime>
#define el 700
using namespace std;
ifstream f("elimin.in");
ofstream g("elimin.out");
int n,m,l,c,i,j,es,s,col[el],a[el][el],coli[el],smax,t,v[el],poz;
int main()
{
        f>>n>>m>>l>>c;
        for(i=1; i<=n; i++)
                for(j=1; j<=m; j++) f>>a[i][j];
        for(i=1; i<=n; i++)
                for(j=1; j<=m; j++) coli[j]+=a[i][j];
        srand(time(0));
        for(t=1; t<=10000; t++) {
                for(i=1; i<=m; i++) col[i]=coli[i];
                for(i=1; i<=n; i++) v[i]=0;
                for(poz=rand()%n+1; s<l; poz=rand()%n+1)
                        if (v[poz]==0) v[poz]=1,s++;
                for(i=1; i<=n; i++)
                        if (v[i]==1) for(j=1; j<=m; j++)  col[j]=col[j]-a[i][j];
                sort (col+1,col+n+1);
                for(i=c+1; i<=m; i++)
                        es+=col[i];
                smax=max(smax,es),es=0,s=0;
        }
        g<<smax<<'\n';
        f.close();
        g.close();
        return 0;
}