Pagini recente » Cod sursa (job #133866) | dpg1 | Cod sursa (job #514068) | Cod sursa (job #393583) | Cod sursa (job #1238215)
#include <stdio.h>
#include <string.h>
#include <math.h>
void main()
{
FILE *fp,*fout;
char buff[255];
fp = fopen("flip.in", "r");
fout = fopen("flip.out","w");
int i,j;
int n,m;
int a[17][17];
int vpozlin[17],vneglin[17],vpozcol[17],vnegcol[17];
int sumlin = 0,sumcol = 0, sum = 0;
if( fp != NULL ){
fscanf(fp,"%d%d",&n,&m);
printf("n = %d m = %d\n",n,m);
for(i = 0; i < n; i++)
vpozlin[i] = vneglin[i] = 0;
for(i = 0; i < m; i++)
vpozcol[i] = vnegcol[i] = 0;
for (i = 0 ; i < n; i++){
for (j = 0; j < m; j++){
fscanf(fp,"%d",&a[i][j]);
sum += a[i][j];
if (a[i][j] > 0)
{
vpozlin[i] += a[i][j];
vpozcol[j] += a[i][j];
}
else
{
vneglin[i] += a[i][j];
vnegcol[j] += a[i][j];
}
}
}
for(i = 0 ; i < n; i++) {
printf("pozlin = %d %d neglin\n",vpozlin[i],vneglin[i]);
if (vpozlin[i] <= abs(vneglin[i]))
sumlin += -vneglin[i] - vpozlin[i];
else
sumlin += vpozlin[i] + vneglin[i];
}
for(i = 0 ; i < m; i++){
printf("pozcol = %d %d negcol\n",vpozcol[i],vnegcol[i]);
if (vpozcol[i] <= abs(vnegcol[i]))
sumcol += -vnegcol[i] - vpozcol[i];
else
sumcol += vpozcol[i] + vnegcol[i];
}
fprintf(fout,"%d\n",sum + (sumlin - sum) + (sumcol - sum));
}
fclose(fp);
fclose(fout);
}