Pagini recente » Cod sursa (job #2291847) | Cod sursa (job #768183) | Cod sursa (job #2468322) | Cod sursa (job #2390205) | Cod sursa (job #1934911)
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
int main() {
int noOfColumns = 0, noOfLines = 0;
ifstream inputFile;
inputFile.open("filip.in", ifstream::in);
if (!inputFile.is_open()) {
cout << "Input file is not opened";
return -1;
}
inputFile >> noOfLines >> noOfColumns;
long int board[noOfLines][noOfColumns];
long int lineSum[noOfLines], columnSum[noOfColumns];
for (int lineIterator = 0; lineIterator < noOfLines; lineIterator++) {
lineSum[lineIterator] = 0;
for (int columnIterator = 0; columnIterator < noOfColumns; columnIterator++) {
inputFile >> board[lineIterator][columnIterator];
lineSum[lineIterator] += board[lineIterator][columnIterator];
if (lineIterator == 0) {
columnSum[columnIterator] = board[lineIterator][columnIterator];
} else {
columnSum[columnIterator] += board[lineIterator][columnIterator];
}
}
}
int lineIndexForMinValue = min_element(lineSum, lineSum + noOfLines) - lineSum;
int columnIndexForMinValue = min_element(columnSum, columnSum + noOfColumns) - columnSum;
for (int lineIterator = 0; lineIterator < noOfLines; lineIterator++) {
board[lineIterator][columnIndexForMinValue] *= -1;
}
for (int columnIterator = 0; columnIterator < noOfColumns; columnIterator++) {
board[lineIndexForMinValue][columnIterator] *= -1;
}
long sum = 0;
for (int lineIterator = 0; lineIterator < noOfLines; lineIterator++) {
for (int columnIterator = 0; columnIterator < noOfColumns; columnIterator++) {
sum += board[lineIterator][columnIterator];
}
}
ofstream outputFile;
outputFile.open("filip.out", ofstream::out);
if (!outputFile.is_open()) {
cout << "Output file is not opened";
return -1;
}
outputFile << sum;
return 0;
}