Cod sursa(job #648729)

Utilizator tzoky07Alexandru Gaman tzoky07 Data 14 decembrie 2011 03:13:24
Problema Jocul Flip Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.82 kb
#include <cstdio>
#include <iostream>

using namespace std;

int value(int a[25],int size)
{
	int s = 0;
	for (int i=1;i<=size;i++)
		s += a[i];
	return s;
}

int flippedValue(int a[25],int size)
{
	int s = 0;
	for (int i=1;i<=size;i++)
		s -= a[i];
	return s;
}


int main()
{
	int nrLinii,nrColoane;
	
	FILE* in = fopen("flip.in","r");
	fscanf(in,"%d %d",&nrLinii,&nrColoane);
	int matrice[nrLinii][nrColoane];
	
	for (int i=1;i<=nrLinii;i+=1)
		for (int j=1;j<=nrColoane;j+=1)
			fscanf(in,"%d",&matrice[i][j]);
	fclose(in);
	cout << nrLinii << nrColoane << endl;
	int vector[nrLinii];
	int maxim = 0;
	int aux = 1;
	for (int i=1;i<=nrLinii;i++)
	{
		for (int j=1;j<=nrColoane;j+=1)
			{vector[j] = matrice[j][i]; cout << "Vector " << j << " : " << vector[j] << endl;}
		cout << "Value : " << value(vector,nrColoane) << " FV : " <<  flippedValue(vector,nrColoane) << endl;
		if ( value(vector,nrColoane) >= flippedValue(vector,nrColoane)  )
				maxim += value(vector,nrColoane);
		else
				{maxim += flippedValue(vector,nrColoane);
				 for (int j=1;j<=nrColoane;j+=1)
					 matrice[j][i] = vector[i] * (-1);
				}
	}
	cout << "--------------------------------------------------------------------------------";
	for (int i=1;i<=nrColoane;i++)
	{
		for (int j=1;j<=nrLinii;j+=1)
			{vector[j] = matrice[j][i]; cout << "Vector " << j << " : " << vector[j] << endl;}
		cout << "Value : " << value(vector,nrLinii) << " FV : " <<  flippedValue(vector,nrLinii) << endl;
		if ( value(vector,nrLinii) >= flippedValue(vector,nrLinii)  )
				maxim += value(vector,nrLinii);
		else
				{
					maxim += flippedValue(vector,nrLinii);
					for (int j=1;j<=nrLinii;j++) matrice[j][i] = vector[i]*(-1);
				}
		}
	
	
	FILE *out = fopen("flip.out","w");
	fprintf(out,"%d",maxim);
	fclose(out);
	
	return 0;
}