Pagini recente » Clasament 24_februarie_simulare_oji_2024_clasa_10 | Cod sursa (job #2437191)
#include <fstream>
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");
int arr[100][100], vec[100], firstSum = 0, secondSum, MAX = 0, N, M, i, j;
void fooBar() {
for (i = 1; i <= M; i++) {
secondSum = 0;
for (j = 1; j <= N; j++) {
secondSum += vec[j] * arr[j][i];
if (secondSum < 0)
secondSum = -secondSum;
firstSum += secondSum;
}
if (MAX < firstSum)
MAX = firstSum;
}
}
void backTrack(int k) {
if (k <= N) {
vec[k] = 1;
backTrack(k + 1);
vec[k] = -1;
backTrack(k + 1);
}
else
fooBar();
}
int main() {
fin >> N >> M;
for (i = 1; i <= N; i++)
for (j = 1; j <= M; j++) {
fin >> arr[i][j];
}
backTrack(1);
fout << MAX;
}