Pagini recente » Monitorul de evaluare | Cod sursa (job #1333730) | Cod sursa (job #968576) | Cod sursa (job #272833) | Cod sursa (job #875115)
Cod sursa(job #875115)
#include <iostream>
#include <cstdio>
using namespace std;
typedef int sir[17][17];
sir x;
int main() {
freopen("flip.in", "r", stdin);
freopen("flip.out", "w", stdout);
int N,M,i,j,s;
int SLpoz, SLneg, SCpoz, SCneg;
cin>>N;
cin>>M;
int nr=0;
//conditie matrice
if(M>=16 || N>=16 || M<=1 || N<=1)
return 0;
SLpoz=0;
SLneg=0;
SCpoz=0;
SCneg=0;
s=0;
//introducem elementele
for(i=1; i<=N; i++)
for(j=1; j<=M; j++)
cin>>x[i][j];
do{
//modificam linia
for(j=1; j<=M; j++)
{
for(i=1; i<=N; i++)
{
if(x[i][j]>=0)
SCpoz=SCpoz+x[i][j];
else
SCneg=((x[i][j])*(-1)+SCneg);
}
if(SCneg>SCpoz)
for(i=1; i<=N; i++)
x[i][j]=x[i][j]*(-1);
SCpoz=0;
SCneg=0;
}
//modificam coloana
for(i=1; i<=N; i++)
{
for(j=1; j<=M; j++)
{
if(x[i][j]>=0)
SLpoz=SLpoz+x[i][j];
else
SLneg=((x[i][j])*(-1)+SLneg);;
}
if(SLneg>SLpoz)
for(j=1; j<=M; j++)
x[i][j]=x[i][j]*(-1);
SLpoz=0;
SLneg=0;
}
nr++;
}while(nr==6);
//calculam suma
for(i=1; i<=N; i++)
for(j=1; j<=M; j++)
s=s+x[i][j];
cout<<s;
return 0;
}