Cod sursa(job #91703)

Utilizator toni2007Pripoae Teodor Anton toni2007 Data 13 octombrie 2007 10:12:58
Problema Elimin Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.75 kb
#include<stdio.h>
long long v1[7000],v2[2000],s;
int main(){
	int t[7000][100],n,m,r,c,max,mmax,i,j,k;
	freopen("elimin.in","r",stdin);
	freopen("elimin.out","w",stdout);
	scanf("%d%d%d%d",&m,&n,&r,&c);
	for (i=0;i<m;++i){
		for (j=0;j<n;++j){
			scanf("%d",&t[i][j]);
			v1[i]+=t[i][j];
		}
		s+=v1[i];
	}
	for (k=0;k<r;++k){
		max=32000;
		for (i=0;i<m;++i)
			if ((v1[i]<max)&&(v1[i]!=0)){
				max=v1[i];
				mmax=i;
			}
		s-=v1[mmax];
		v1[mmax]=0;
	}
	for (i=0;i<n;++i){
		for (j=0;j<m;++j){
			if (v1[j]!=0)
				v2[i]+=t[j][i];
		}
	}
	for (k=0;k<c;++k){
		max=32000;
		for (i=0;i<n;++i)
			if ((v2[i]<max)&&(v2[i]!=0)){
				max=v2[i];
				mmax=i;
			}
		s-=v2[mmax];
		v2[mmax]=0;
	}
	printf("%lld",s);
	return 0;
}