Что-то не так в коде. Почему условие «if» не срабатывает? пожалуйста, объясни ⇐ JAVA
-
Гость
Что-то не так в коде. Почему условие «if» не срабатывает? пожалуйста, объясни
Гики для гиков: проблема точки равновесия Пожалуйста, объясните мне разницу между этими двумя кодами.
Мой код: объяснение моего кода
В цикле: i = 1, ele = 4, leftSum = 1, rightSum = 13 - 4 = 9. Условие leftSum == rightSum не выполняется, поэтому цикл продолжается. i = 2, ele = 9, leftSum = 4, rightSum = 13 - 9 = 4. В этот момент условие leftSum == rightSum выполняется, поэтому код внутри блока if выполняется. Для равновесияPoint установлено значение i + 1, что равно 2 + 1 = 3, а затем функция возвращает 3 в качестве точки равновесия. Итак, правильная точка равновесия находится, когда i = 2, и функция правильно возвращает 3 в качестве точки равновесия.
публичный класс EquilibriumPoint { // а: входной массив // n: размер массива // Функция для поиска точки равновесия в массиве. public static void prefixSum(long []arr){ int n= длина аранж.; for (int i =1;i
Гики для гиков: проблема точки равновесия Пожалуйста, объясните мне разницу между этими двумя кодами.
Мой код: объяснение моего кода
В цикле: i = 1, ele = 4, leftSum = 1, rightSum = 13 - 4 = 9. Условие leftSum == rightSum не выполняется, поэтому цикл продолжается. i = 2, ele = 9, leftSum = 4, rightSum = 13 - 9 = 4. В этот момент условие leftSum == rightSum выполняется, поэтому код внутри блока if выполняется. Для равновесияPoint установлено значение i + 1, что равно 2 + 1 = 3, а затем функция возвращает 3 в качестве точки равновесия. Итак, правильная точка равновесия находится, когда i = 2, и функция правильно возвращает 3 в качестве точки равновесия.
публичный класс EquilibriumPoint { // а: входной массив // n: размер массива // Функция для поиска точки равновесия в массиве. public static void prefixSum(long []arr){ int n= длина аранж.; for (int i =1;i
Мобильная версия