Pagini recente » Cod sursa (job #2263731) | Rezultatele filtrării | Rezultatele filtrării | Cod sursa (job #1440938) | Cod sursa (job #2189600)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("flip.in");
ofstream g("flip.out");
int n,m,i,j,a[16][16],S_max,v[256],S;
void comutare_linii();
void comutare_coloane();
int main()
{
f>>n>>m;
for (i=1; i<=n; i++)
for (j=1; j<=m; j++)
f>>a[i][j];
S_max=0;
for (i=1; i<=n; i++)
for (j=1; j<=m; j++)
S_max=S_max+a[i][j];
comutare_linii();
}
void comutare_linii()
{
int k;
for (i=1; i<=n; i++)
{
S=0;
for (j=1; j<=m; j++)
{
v[j]=-1*a[i][j];
S=S+v[j];
}
for (k=1; k<=n; k++)
if (k!=i)
for (j=1; j<=m; j++)
S=S+a[i][j];
if (S>S_max)
{
S_max=S;
for (k=1; k<=m; k++)
a[i][j]=v[k];
}
}
comutare_coloane();
}
void comutare_coloane()
{
int k;
for (j=1; j<=m; j++)
{
S=0;
for (i=1; i<=m; i++)
{
v[i]=-1*a[i][j];
S=S+v[i];
}
for (k=1; k<=m; k++)
if (k!=j)
for (i=1; i<=n; i++)
S=S+a[i][j];
if (S>S_max)
{
S_max=S;
for (k=1; k<=n; k++)
a[i][j]=v[k];
}
}
g<<S_max;
}