Pagini recente » oji2008x | Cod sursa (job #26011)
Cod sursa(job #26011)
#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;
}