Int main() {
int arr[M][M] = {
{12, -6, 6, 8, 1},
{8, 7, -6, 5, 3},
{0, 7, -6, -9, 4},
{1, -10, -8, 8, 5},
{6, -4, 2, 5, 3},
};
int i, j, k;
int sum, ok, * sums, sum_index;
int min_elem;
for (j = 0; j < M; j++) {
ok = 1;
sum = 0;
for (k = 0; k < M; k++) {
if (arr[k][j] < 0) {
ok = 0;
break;
}
sum += arr[k][j];
}
if (ok) {
printf("stolbec: %d, sum: %d\n", j + 1, sum);
}
}
sums = (int*)malloc(sizeof(int) * (M - 1) * 2);
if (sums == NULL) {
exit(EXIT_FAILURE);
}
sum_index = 0;
Обьясните что делает данная строчка sums = (int*)malloc(sizeof(int) * (M - 1) * 2);