Cod sursa(job #26011)

Utilizator hurrycaneBogdan Gaza hurrycane Data 4 martie 2007 18:03:52
Problema Elimin Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.39 kb
#include<fstream.h>

ifstream in("elimin.in");
ofstream out("elimin.out");

int m,n,r,c;
int v[100][100];
int lin[100];
int col[100];
int st[100];

int i,j;
int a,b;
int sum;


    /*
void cut_lin(){
  min = ran[0];
  min2 = 0;
  for(i=0;i<n;i++)
	if((ran[i]<min)&&(ran[i]!=0))
	{
	min = ran[i]; min2 = i;
	}
  for(i=min2*n+1;i<m*n;i++) v[i]=0;
  ran[min2] =0;
}

void cut_col(){
  min = col[0];
  min2 = 0;
  for(i=0;i<m;i++)
	{
	if((col[i]<min)&&(col[i]!=0))
		{
		min = col[i]; min2 = i;
		}
	}
  for(i=0;i<m*n;i++) if(i%n == min2) v[i] = 0;
  col[min2] =0;
  }
  */
void remlin(){
int min = lin[0],min_lin = 0;
int er = 0,vr = 0,lt = 0;
for(i=0;i<n;i++){
	if(min>lin[i]&&lin[i]!=0){
		min = lin[i];
		min_lin = i;
	}else if(min == lin[i] && lin[i] != 0) { er = 1; st[vr] = i; vr++;}
}

if(er == 1){
	for(i=0;i<vr;i++) if(min == st[i]) { lt = 1; break;}

	if(lt) out<<"ddd";

}

//for(i=0;i<n;i++) v[min_lin][i] = 0;
lin[min_lin] = 0;
er = 0;
}



int main(){
// date de intrare
in>>m>>n>>r>>c;

// citire matrice
for(i=0;i<m;i++) {
	for(j=0;j<n;j++)
	{
		in>>v[i][j];
		lin[i] += v[i][j];
	}
}


// cautam cele mai mici r linii si le eliminam
for(int k=0;k<r;k++) remlin();



/*
for(i=0;i<m*n;i++) {
	b = i%n;
	col[b] += v[i];
}

for(k=0;k<r;k++) cut_col();

for(i=0;i<m*n;i++) sum += v[i];
out<<sum;

*/
return 0;
}