Pagini recente » Cod sursa (job #1045099) | Cod sursa (job #3351499) | Cod sursa (job #1095503) | Cod sursa (job #486431) | Cod sursa (job #1699797)
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.PrintWriter;
public class Main {
static int[][] matrix = new int[17][17];
public static void flipColumn(int j , int n)
{
for(int i = 0 ; i < n ; i++)
{
matrix[i][j] = 0 - matrix[i][j];
}
}
public static void flipLine(int i,int m)
{
for(int j = 0 ; j < m ;j++)
{
matrix[i][j] = 0 - matrix[i][j];
}
}
public static void main(String[] args)
{
try
{
BufferedReader br = new BufferedReader(new FileReader("flip.in"));
PrintWriter pr = new PrintWriter("flip.out");
String line;
line = br.readLine();
String[] splitedLine = line.split(" ");
int n = Integer.parseInt(splitedLine[0]);
int m = Integer.parseInt(splitedLine[1]);
for(int i = 0 ; i < n ;i++)
{
line = br.readLine();
int positiveSum = 0 ;
int negativeSum = 0 ;
splitedLine = line.split(" ");
for(int j = 0 ; j < m ; j++)
{
matrix[i][j] = Integer.parseInt(splitedLine[j]);
if(matrix[i][j] < 0)
{
negativeSum += matrix[i][j];
}
else
{
positiveSum += matrix[i][j];
}
}
if(Math.abs(negativeSum) > positiveSum)
{
flipLine(i,m);
}
}
for(int j = 0 ; j < m ;j++)
{
int positiveSum = 0 ;
int negativeSum = 0 ;
for(int i = 0 ; i < n; i++)
{
if(matrix[i][j] < 0)
{
negativeSum += matrix[i][j];
}
else
{
positiveSum += matrix[i][j];
}
}
if(Math.abs(negativeSum) > positiveSum)
{
flipColumn(j,n);
}
}
int sum = 0 ;
for(int i = 0 ; i < n ; i++)
{
for(int j = 0 ; j < m ; j++)
{
sum += matrix[i][j];
}
}
pr.print(sum);
pr.close();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}