• Задача D. Пара чисел Имя входного файла: Имя выходного файла: Ограничение по времени: Ограничение по памяти: Есть массив а состоящий из и целых чисел. Есть ли в массиве два различных индекса i и у такие, что ад - а, равно сумме всех остальных чисел массива? Формат входных данных В первой строке дается длина массива n (3 < n < 105). Во второй строке сам массив (1 5 сл сл Формат выходных данных Если есть два элемента массива, что их произведение равно сумме всех остальных элементов, то выведите Примеры 56327 Казахстан, 12 марта, 2023 4 1236 стандартный ввод стандартный вывод 1 секунда 256 мегабайт Замечание стандартный ввод В первом примере 5 + 3 = 6 + 2 + 7. YES NO стандартный вывод

Ответы 1

  • Ответ:

    Для решения этой задачи мы можем использовать два указателя, один на начало массива, другой на его конец. Мы начинаем сравнивать сумму первого и последнего элементов массива с суммой всех остальных элементов. Если сумма первого и последнего элементов больше суммы всех остальных элементов, то мы сдвигаем указатель на последний элемент на один влево. Если сумма первого и последнего элементов меньше суммы всех остальных элементов, то мы сдвигаем указатель на первый элемент на один вправо. Мы продолжаем это до тех пор, пока указатели не сходятся друг к другу или мы находим пару индексов, удовлетворяющих условию задачи.

    Вот код на Python, который решает эту задачу:

    ```

    n = int(input())

    a = list(map(int, input().split()))

    left = 0

    right = n - 1

    total_sum = sum(a)

    while left < right:

    if a[left] + a[right] == total_sum - a[left] - a[right]:

    print("YES")

    break

    elif a[left] + a[right] < total_sum - a[left] - a[right]:

    left += 1

    else:

    right -= 1

    else:

    print("NO")

    ```

  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years