Pagini recente » Cod sursa (job #770759) | Cod sursa (job #1422752) | Cod sursa (job #496873) | Monitorul de evaluare | Cod sursa (job #496872)
Cod sursa(job #496872)
#include "stdio.h"
int solve(int a[16][16],int m, int n){
int i,j;
int sum=0;
int ok=0;
while(!ok){
ok = 1;
for(i=0;i<m;i++){
sum = 0;
for(j=0;j<n;j++){
sum += a[i][j];
}
if(sum<0){
for(j=0;j<n;j++){
a[i][j] *= (-1);
}
ok = 0;
}
}
for(i=0;i<n;i++){
sum = 0;
for(j=0;j<m;j++){
sum += a[j][i];
}
if(sum<0){
for(j=0;j<m;j++){
a[j][i] *= (-1);
}
ok = 0;
}
}
}
sum = 0;
for(i=0;i<m;i++){
for(j=0;j<n;j++){
sum += a[i][j];
}
}
return sum;
}
void main(){
int m,n,i,j;
int a[16][16];
int rez;
FILE *f,*g;
f = fopen("flip.in","r");
g = fopen("flip.out","w");
fscanf(f,"%d %d",&m,&n);
for(i=0;i<m;i++){
for(j=0;j<n;j++){
fscanf(f,"%d",&a[i][j]);
}
}
rez = solve(a,m,n);
fprintf(g,"%d",rez);
for(i=0;i<m;i++){
for(j=0;j<n;j++){
fprintf(g,"%d ",a[i][j]);
}
fprintf(g,"\n");
}
}