Pagini recente » Cod sursa (job #937138) | Cod sursa (job #1572165) | Cod sursa (job #1846249) | Cod sursa (job #2742423) | Cod sursa (job #2630464)
#include<iostream>
#include<fstream>
using namespace std;
ifstream f("flip.in");
ofstream g("flip.out");
int n,m,a[16][16],i,j,s1,s2,s;
void verificare(int i,int j)
{
s1=s1+a[i][j];
s2=s2+a[i][j]*-1;
if(j!=m)
verificare(i,j+1);
else
{
if(s1<s2)
for(j=1;j<=m;j++)
a[i][j]=a[i][j]*-1;
j=1;
if(i!=n)
{
s1=s2=0;
verificare (i+1,j);
}
}
}
void verificare2(int i,int j)
{
s1=s1+a[i][j];
s2=s2+a[i][j]*-1;
if(i!=n)
{verificare2(i+1,j);
}
else
{
if(s1<s2)
for(i=1;i<=n;i++)
a[i][j]=a[i][j]*-1;
i=1;
if(j!=m)
{
s1=s2=0;
verificare2(i,j+1);
}
}
}
void citire(int i,int j)
{
f>>a[i][j];
if(j!=m)
citire(i,j+1);
else
{
j=1;
if(i!=n)
citire (i+1,j);
}
}
void total(int i, int j)
{
s=s+a[i][j];
if(j!=m)
total(i,j+1);
else
{
j=1;
if(i!=n)
total (i+1,j);
}
}
int main()
{
f>>n>>m;
i=j=1;s=0;s1=s2=0;
citire(i,j);
verificare(i,j);
s1=s2=0;
verificare2(i,j);
i=j=1;
total(i,j);
g<<s;
return 0;}