Cod sursa(job #7108)

Utilizator petrecgClinciu Glisca Petre petrecg Data 21 ianuarie 2007 12:31:19
Problema Elimin Scor 0
Compilator cpp Status done
Runda preONI 2007, Runda 1, Clasa a 9-a si gimnaziu Marime 0.8 kb
#include <stdio.h>
FILE *f,*g;
int i,j,m,n,l1,l2,x,r,e[1000],d[1000],c,s;long a[1000],b[1000];
int main()
{f=fopen("elimin.in","r");fscanf(f,"%d%d%d%d",&m,&n,&r,&c);
 g=fopen("elimin.out","w");
 for(i=1;i<=m;i++){
  for(j=1;j<=n;j++)
   {fscanf(f,"%d",&x);a[i]+=x;b[j]+=x;}e[i]=i;d[i]=i;}
 fclose(f);
 for(i=1;i<m;i++)for(j=i+1;j<=m;j++)
  if(a[i]>a[j]){x=a[i];a[i]=a[j];a[j]=x;x=e[i];e[i]=e[j];e[j]=x;}
 for(i=1;i<n;i++)for(j=i+1;j<=n;j++)
  if(b[i]>b[j]){x=b[i];b[i]=b[j];b[j]=x;x=d[i];d[i]=d[j];d[j]=x;}
 f=fopen("elimin.in","r");fscanf(f,"%d%d%d%d",&m,&n,&r,&c);l1=1;
 for(i=1;i<=n;i++)if(i!=e[l1]||l1>r){l2=1;
  for(j=1;j<=m;j++)if(j!=d[l2]||l2>c){fscanf(f,"%d",&x);s=s+x;}else {fscanf(f,"%d",&x);l2++;}
  }
   else {fscanf(f,"%d",&x);l1++;}
 fclose(f);fprintf(g,"%ld",s);fclose(g);
 return 0;
}