Pagini recente » Cod sursa (job #2903663) | Cod sursa (job #1094403) | Cod sursa (job #833626) | Cod sursa (job #2655871) | Cod sursa (job #780852)
Cod sursa(job #780852)
#include <cstdio>
int main (void)
{
std::freopen("flip.in","r",stdin);
std::freopen("flip.out","w",stdout);
unsigned int n, m;
std::scanf("%u%u",&n,&m);
const unsigned int MAX_SIZE(16);
signed int matrix [MAX_SIZE] [MAX_SIZE];
unsigned int i(0), j;
signed int max_sum(0);
do
{
j = 0;
do
{
std::scanf("%u",&matrix[i][j]);
max_sum += matrix[i][j];
++j;
}
while (j < m);
++i;
}
while (i < n);
std::fclose(stdin);
unsigned int limit(1 << m), linie, coloana;
signed int suma, s;
for (i = 0 ; i < limit ; ++i)
{
suma = 0;
for (linie = 0 ; linie < n ; ++linie)
{
for (s = coloana = 0 ; coloana < m ; ++coloana)
{
if (i & (1 << coloana))
s -= matrix[linie][coloana];
else
s += matrix[linie][coloana];
}
suma += (s > -s ? s : -s);
}
if (max_sum < suma)
max_sum = suma;
}
std::printf("%d\n",max_sum);
std::fclose(stdout);
return 0;
}