Mai intai trebuie sa te autentifici.
Cod sursa(job #1125505)
| Utilizator | Data | 26 februarie 2014 18:01:38 | |
|---|---|---|---|
| Problema | Jocul Flip | Scor | 30 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 1.49 kb |
#include <fstream>
using namespace std;
ifstream in("flip.in",ios::in);
ofstream out("flip.out",ios::out);
inline void comutare_linie(int (&array)[100][16],int n,int m);
inline void comutare_coloana(int (&array)[100][16],int n,int m);
int main()
{
long long int n,m,suma=0,suma2=0;
int array[100][16];
in>>n;
in>>m;
for(int i=0;i<n;++i)
{
for(int j=0;j<m;++j)
{
in>>array[i][j];
suma=suma+array[i][j];
}
}
for(int i=0;i<n;++i)
{
comutare_linie(array,i,n);
for(int j=0;j<n;++j)
{
for(int k=0;k<m;++k)
suma2=suma2+array[j][k];
}
if(suma2>=suma)
suma=suma2;
else
comutare_linie(array,i,n);
suma2=0;
}
for(int i=0;i<m;++i)
{
comutare_coloana(array,n,i);
for(int j=0;j<n;++j)
{
for(int k=0;k<m;++k)
suma2=suma2+array[j][k];
}
if(suma2>=suma)
suma=suma2;
else
comutare_coloana(array,n,i);
suma2=0;
}
out<<suma;
in.close();
out.close();
return 0;
}
void comutare_linie(int (&array)[100][16],int n,int m)
{
for(int i=0;i<m;++i)
{
array[n][i]*=(-1);
}
}
void comutare_coloana(int (&array)[100][16],int n,int m)
{
for(int i=0;i<n;++i)
{
array[i][m]*=(-1);
}
}
