Pagini recente » Cod sursa (job #362112) | Cod sursa (job #2523832) | Cod sursa (job #2265673) | Cod sursa (job #2568340) | Cod sursa (job #464711)
Cod sursa(job #464711)
#include <fstream.h>
using namespace std;
int n,m,A[16][8192],r,c,B[8192],C[8192],sol;
void test()
{int i,aux=0;
memcpy(C,B,(m<<2));
sort(C,C+m);
for(i=c;i<m;++i)
aux+=C[i];
sol=max(sol,aux);}
void doit(int i,int r)
{if(r<0||n-i<r)
return ;
if(i==n)
{test();
return ;}
doit(i+1,r-1);
int j;
for(j=0;i<m;++i)
B[j]+=A[i][j];
doit(i+1,r);
for(j=0;i<m;++i)
B[j]-=A[i][j];}
int main()
{int i,j;
ifstream q("elimin.in");
ofstream w("elimin.out");
q>>n>>m>>r>>c;
if(n>m)
{swap(n,m);
swap(r,c);
for(i=0;i<m;++i)
for(j=0;i<n;++i)
q>>A[j][i];}
else
for(i=0;i<m;++i)
for(j=0;i<n;++i)
q>>A[i][j];
doit(0,r);
w<<sol;
return 0;}