Cod sursa(job #1148348)

Utilizator cristibogdanPatrascu Cristian cristibogdan Data 20 martie 2014 18:17:59
Problema Elimin Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.42 kb
#include <fstream>
#include <algorithm>
using namespace std;
ifstream f("elimin.in");
ofstream g("elimin.out");
int tot,o,n,m,a[7300][7300],i,nr,r,c,j,s,v[90],t,T,tmax,b[7300][7300],q[90];
int main()
{  f>>m>>n>>r>>c;
     if(m<=n){
            o=n;
            n=m;
            m=o;
            for(i=1;i<=n;i++)
        for(j=1;j<=m;j++){
            f>>a[i][j];
            tot=tot+a[i][j];}
}
else

    for(i=1;i<=m;i++)
        for(j=1;j<=n;j++){
            f>>a[i][j];
            tot=tot+a[i][j];}


    while(q[n+1]==0){

            for(i=1;i<=n+1;i++)
                    {if(q[i]==1){
                        q[i]=0;
                            nr--;}
                        else{
                           q[i]=1;
                             nr++;
                                break;

                        }}


             if(nr==c&&q[n+1]==0){T=tot;
                for(i=1;i<=n;i++)
                    if(q[i]==1)
                        for(j=1;j<=m;j++){
                            T=T-a[j][i];
                            }

         for(i=1;i<=m;i++){
                s=0;
                for(j=1;j<=n;j++)
                    s=s+a[i][j]*(1-q[j]);
                v[i]=s;}
            sort(v+1,v+n+1);
                for(t=1;t<=r;t++)
                        T=T-v[t];
            if(T>tmax)
                tmax=T;}


    }
        g<<tmax;
    return 0;
}