Cod sursa(job #1816941)

Utilizator balazstasiTasi Balazs balazstasi Data 27 noiembrie 2016 10:23:20
Problema Jocul Flip Scor 30
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.78 kb
VAR
	n,m,MAX,i,j : Integer;
	v		: Array[1..16] of -1..1;
	a		: Array[1..16,1..16] of Longint;
	f, g    : Text;

Procedure eval;
Var
	total_sum,sum_oszlop : Integer;
BEGIN
	total_sum := 0;
	for i:=1 to m do
		begin
			sum_oszlop:=a[1,i];
			for j:=2 to n do
				sum_oszlop:=sum_oszlop+v[j]*a[j,i];
			total_sum:=total_sum+abs(sum_oszlop);
		end;
	if MAX<total_sum then MAX:=total_sum;
END;

Procedure back(k : Integer);
BEGIN
	v[k]:=1;
	if k=n then eval
		else back(k+1);
	v[k]:=-1;
	if k=n then eval
		else back(k+1);
end;

BEGIN

	Assign(f,'flip.in');
	Assign(g,'flip.out');
	Reset(f); Rewrite(g);
	
	MAX := -MaxInt; 
	
	Read(f,n,m);
	for i:=1 to n do
		for j:=1 to m do
			Read(f,a[i,j]);
			
	back(1);
	
	Write(g,MAX);
	
	Close(f); Close(g);

END.