Pagini recente » Cod sursa (job #1055372) | Cod sursa (job #680743) | Cod sursa (job #2463956) | Cod sursa (job #3120769) | Cod sursa (job #118700)
Cod sursa(job #118700)
//0001
#include<stdio.h>
int nr,i,j,c,n,i2,s,j2,r,m,k,l,max;
int v[100],v2[100],a[20][20],b[20][20];
int main(){
FILE *f=fopen("elimin.in","r");
fscanf(f,"%d%d%d%d",&n,&m,&r,&c);
for(i=1;i<=n;i++){
for(j=1;j<=m;j++){
fscanf(f,"%d",&a[i][j]);
}
}
fclose(f);
for(i=0;i<=(1<<n)-1;i++){
nr=0;
for(j=n-1;j>=0;j--){
v[j+1]=(i>>j)&1;
if(v[j+1]==1)nr++;
}
if(nr==r){
for(i2=0;i2<=(1<<m)-1;i2++){
nr=0;
for(j2=m-1;j2>=0;j2--){
v2[j2+1]=(i2>>j2)&1;
if(v2[j2+1]==1)nr++;
}
if(nr==c){
for(k=1;k<=n;k++){
if(v[k]==1){
for(l=1;l<=m;l++){
b[k][l]=0;
}
}
else
for(l=1;l<=m;l++){
b[k][l]=a[k][l];
}
}
s=0;
for(l=1;l<=m;l++){
if(v2[l]==1){
for(k=1;k<=n;k++){
b[k][l]=0;
}
}
else
for(k=1;k<=n;k++){
//b[k][l]=b[k][l];
s+=b[k][l];
}
}
if(s>max)max=s;
}
}
}
}
FILE *g=fopen("elimin.out","w");
fprintf(g,"%d\n",max);
fclose(g);
return 0;
}