Cod sursa(job #6886)

Utilizator gabybrezoiuBrezoiu Gabriel gabybrezoiu Data 21 ianuarie 2007 10:29:21
Problema Elimin Scor 0
Compilator cpp Status done
Runda preONI 2007, Runda 1, Clasa a 9-a si gimnaziu Marime 0.98 kb
#include<fstream.h>
void main()
{int a[100][100],m,n,r,c,kr=0,kc=0,i,j,s[100],copie[100],lim,sum=0,aux;
ifstream f("elimin.in");
ofstream g("elimin.out");
f>>m>>n>>r>>c;
for(i=1;i<=m;i++)
   {s[i]=0;
    for(j=1;j<=n;j++)
       {f>>a[i][j];
	s[i]=s[i]+a[i][j];}
    copie[i]=s[i];}
f.close();
for(i=1;i<m;i++)
   for(j=i+1;j<=m;j++)
      if(copie[i]>copie[j])
	{aux=copie[i];
	 copie[i]=copie[j];
	 copie[j]=aux;}
lim=copie[r];
for(i=1;i<=m && kr<r;i++)
   if(s[i]<=lim)
     {kr++;
      for(j=1;j<=n;j++) a[i][j]=0;}
for(j=1;j<=n;j++)
   {s[j]=0;
    for(i=1;i<=m;i++) s[j]=s[j]+a[i][j];
    copie[j]=s[j];}
for(i=1;i<n;i++)
   for(j=i+1;j<=n;j++)
      if(copie[i]>copie[j])
	{aux=copie[i];
	 copie[i]=copie[j];
	 copie[j]=aux;}
lim=copie[c];
for(i=1;i<=n && kc<c;i++)
   if(s[i]<=lim)
     {kc++;
      for(j=1;j<=m;j++) a[j][i]=0;}
for(i=1;i<=m;i++)
    {for(j=1;j<=n;j++)
    {g<<a[i][j]<<" ";
    sum=sum+a[i][j];}
    g<<endl;}
g<<sum;
g.close();}