Pagini recente » Cod sursa (job #2228944) | Cod sursa (job #2228945) | Cod sursa (job #15079) | Cod sursa (job #3201217) | Cod sursa (job #7302)
Cod sursa(job #7302)
#include<fstream.h>
#define max 100
int a[max][max],m,n,r,c,i,j,s,t,u,min,poz;
void eliml(int l)
{
int i,j;
for(i=l+1;i<=m;i++)
for(j=1;j<=n;j++)
a[i-1][j]=a[i][j];
for(j=1;j<=n;j++)
a[m][j]=0;
--m;
}
void elimc(int c)
{
int i,j;
for(i=1;i<=m;i++)
for(j=c+1;j<=n;j++)
a[i][j-1]=a[i][j];
for(i=1;i<=m;i++)
a[i][n]=0;
--n;
}
int sumal(int b)
{
int i,s=0;
for(i=1;i<=n;i++)
s=s+a[b][i];
return s;
}
int sumac(int d)
{
int i,s1=0;
for(i=1;i<=m;i++)
s1=s1+a[i][d];
return s1;
}
int main()
{
ifstream f("elimin.in");
ofstream g("elimin.out");
f>>m>>n>>r>>c;
for(i=1;i<=m;i++)
for(j=1;j<=n;j++)
f>>a[i][j];
for(t=1;t<=r;t++)
{
min=sumal(1);
poz=1;
for(i=2;i<=m;i++)
if(sumal(i)<min)
{
min=sumal(i);
poz=i;
}
eliml(poz);
}
for(u=1;u<=c;u++)
{
min=sumac(1);
poz=1;
for(j=2;j<=n;j++)
if(sumac(j)<min)
{
min=sumac(j);
poz=j;
}
elimc(poz);
}
for(i=1;i<=m;i++)
for(j=1;j<=n;j++)
s=s+a[i][j];
g<<s;
return 0;
}