Cod sursa(job #11407)

Utilizator catanewBarbu Andreea Diana catanew Data 31 ianuarie 2007 17:30:21
Problema Elimin Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.29 kb
#include<f.stream.h>
int main();
ifstream f("initializare.txt");
ofstream g("rez.txt");
int a[100][100],n,m,r,c,i,j,ok,aux,s,x[100]y[100],k,l,smax;
f>>n;f>>m;f>>r;f>>c;
for(i=0;i<=m-1;i++)
for(j=0;j<=n-1;j++) f>>x[j][i];
// am incercat sa ordonez descrescator liniile;
do
{ok=0;
for(i=o;i<=m-2;i++)
for(j=0;j<=n-2;j++)
if(a[j][i]>a[j+1][i+1])
{aux=a[j][i];  a[j][i]=a[j+1][i+1]; a[j+1][i+1]=aux; ok=1;}
}
while(ok==1)
k=l=0;
// aflam suma liniilor so le transferam in 2 vectori: unul care sa cuprinda suma liniilor si altul nr liniei;
for(i=0;i<=m-1;i++)
{s=0;
for(j=0;j<=n-2;j++)
s+=a[j][i];
x[k++]=s;
y{l++]=i;
}
// ordonam liniile descresc dupa suma lor;
do
{ok=0;
for(i=o;i<=l-2;i++) if (x[i]>x[i+1]) {aux=x[i]; x[i]=x[i+1]; x[i+1]=aux;
                                      aux=y[i]; y[i]=y[i+1]; y[i+1]=aux;
                                      for(j=0;j<=n-1;j++) { aux=a[j][i]; a[j][i]=a[j][i+1];} a[j][i+1]=aux;}
                                     }
m-=r;
n-=c;
smax=0;
//scadem randurile din m, si coloanele din n;
// citim matricea ordonata...cred;))..ca e ordonata...    calculam suma max si o afisam(nu cred ca se cheama tocmai afisare:) ;
for(i=0;i<=m-1;i++)
for(j=0;j<=n-1;j++)
{smax+=a[j][i]; g<<a[j][i]<<" ";}
g<<smax;
f.close();
g.close();
return 0;
}