Cod sursa(job #1334129)

Utilizator Marian_25Stanciulica Marian Marian_25 Data 3 februarie 2015 21:58:30
Problema Jocul Flip Scor 0
Compilator c Status done
Runda Arhiva de probleme Marime 1.11 kb
#include<stdio.h>

int main()
{
	FILE *input, *output;
	input = fopen("flip.in", "r");
	output = fopen("flip.out", "w");
	int M, N;
	
	fscanf(input, "%d", &N);
	fscanf(input, "%d", &M);

	int v[N][M], i, j;
	for(i = 0; i < N; i++)
	{
		for(j = 0; j < M; j++)
		{
			fscanf(input, "%d", &v[i][j]);
		}
	}
	
	int min_lin = 0, index_lin = -1, index_col = -1, min_col = 0, s;
	i = N;
	while(i)
	{
		s = 0;
		for(j = 0; j < M; j++)
		{
			s += v[i][j];
		}
		if (s < min_lin)
		{
			min_lin = s;
			index_lin = i;
			
		}
		i--;
	}
	
	if(index_lin != -1)
	for(j = 0; j < M; j++)
	{
		v[index_lin][j] = v[index_lin][j] * -1;
	}
	
	j = M;
	while(j)
	{
		s = 0;
		for(i = 0; i < N; i++)
		{
			s += v[i][j];
		}
		if (s < min_col)
		{
			min_col = s;
			index_col = j;
			
		}
		j--;
	}
	
	if(index_col != -1)
	for(i = 0; i < N; i++)
	{
		v[i][index_col] = v[i][index_col] * (-1);
	}
	
	int suma = 0;
	for(i = 0; i < N; i++)
	{
		for(j = 0; j < M; j++)
		{
			suma = suma + v[i][j];
		}
	}
	fprintf(output,"%d", suma);
	
	fclose(input);
	fclose(output);
	return 0;
}