Как вычислить зеркальную сумму массива в Java? [дубликат]JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Как вычислить зеркальную сумму массива в Java? [дубликат]

Сообщение Anonymous »

Я пытаюсь вычислить сумму зеркальных элементов в массиве с помощью Java.
Пара зеркальных элементов формируется путем объединения первого элемента с последним, второго элемента со вторым последним и т. д.

Если массив имеет нечетную длину, средний элемент должен быть добавлен как есть. Я хочу реализовать это эффективно, в идеале используя подход с двумя указателями.
Например, с помощью ввода:

Код: Выделить всё

5
1 2 3 4 5
Ожидаемый результат: Объяснение: Пары: (1+5)=6, (2+4)=6, средний элемент = 3 → Итого = 6+6+3 = 15
Я попробовал код:

Код: Выделить всё

import java.util.*;

public class MirrorSum {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);

int N = sc.nextInt();
int[] A = new int[N];

for(int i = 0; i < N; i++) {
A[i] = sc.nextInt();
}

int sum = 0;
// I am not sure how to correctly add mirrored pairs efficiently
System.out.println(sum);
}
}
Как эффективно вычислить сумму зеркальных пар в Java, особенно для больших массивов? Я хотел бы знать, как лучше всего это сделать, желательно с использованием двух указателей.
Обновление: чтобы просто суммировать элементы, вы можете просто добавить их все. Но в упражнении речь идет о зеркальных парах, которые являются обычным методом программирования для симметричной обработки массивов. Использование зеркальных пар подготавливает вас к проблемам, когда вы можете умножать пары, проверять условия или находить зеркальные максимумы, а не просто суммировать. –
Суммирование зеркальных пар в этой задаче дает тот же результат, что и суммирование всех элементов. Целью использования зеркальных пар, вероятно, является обучение технике двух указателей и подготовка к задачам, в которых операции над зеркальными парами отличаются от общей суммы.

Подробнее здесь: https://stackoverflow.com/questions/798 ... ay-in-java
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»