Pagini recente » Cod sursa (job #2907094) | Cod sursa (job #1496241) | Cod sursa (job #2755433) | Cod sursa (job #1911613) | Cod sursa (job #2287542)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("flip.in");
ofstream g("flip.out");
int n, m, matrix[16][16];
void functcol(int i)
{
int j, Scol=0, Scol2 =0;
for (j=0;j<n;j++)
{
Scol += matrix[j][i];
Scol2 += -matrix[j][i];
}
if (Scol2 > Scol)
for (j=0;j<n;j++)
matrix[j][i] = -matrix[j][i];
}
int functrand(int i)
{
int j, Srand = 0, Srand2 = 0;
for (j=0;j<m;j++)
{
Srand += matrix[i][j];
Srand2 += -matrix[i][j];
}
if (Srand2 > Srand)
{
for (j=0;j<m;j++)
matrix[i][j] = -matrix[i][j];
return Srand2;
}
return Srand;
}
int main()
{
f >> n >> m;
int i, j;
long long Stotal, Scopie = 0;
for (i=0; i<n; i++)
for(j=0; j<m; j++)
{
f >> matrix[i][j];
Scopie += matrix[i][j];
}
do{
Stotal = Scopie;
Scopie = 0;
for (i=0; i<n; i++)
{
for (j=0; j<m; j++)
functcol(j);
Scopie += functrand(i);
}
}while(Stotal != Scopie);
g << Stotal;
return 0;
}