eddy-08 E eddy-08 Регистрация 21 Ноя 2013 Сообщения 81 Репутация 0 Спасибо 0 Монет 0 4 Сен 2023 #1 A. Сумма-перевёртыш ограничение по времени на тест1 секунда ограничение по памяти на тест256 мегабайт вводстандартный ввод выводстандартный вывод Вам дан массив из n целых чисел a1,a2,…,an . Каждое число равно либо 1 , либо −1 . Вы должны выполнить следующую операцию над массивом a ровно один раз: Выбрать индекс i (1≤i<n ) и перевернуть знаки ai и ai+1 . Здесь переворачивание знака означает, что −1 будет заменено на 1 , а 1 станет −1 . Какое максимально возможное значение a1+a2+…+an можно получить после применения вышеописанной операции? Входные данные Каждый тест состоит из нескольких наборов входных данных. В первой строке находится одно целое число t (1≤t≤500 ) — количество наборов входных данных. Далее следует описание наборов входных данных. Первая строка каждого теста содержит одно целое число n (2≤n≤105 ) — длину массива a . Следующая строка содержит n целых чисел a1,a2,…,an (ai=1 либо ai=−1 ). Гарантируется, что сумма значений n по всем наборам входных данных не превосходит 105 . Выходные данные Для каждого набора входных данных в отдельной строке выведите максимально возможную сумму массива a , которую вы можете получить в результате применения одной операции. Пример входные данныеСкопировать 4 5 -1 1 1 -1 -1 5 1 1 -1 -1 -1 2 1 1 4 1 -1 -1 1 выходные данныеСкопировать 3 3 -2 4 Примечание В первом случае мы можем выбрать индекс 4 и перевернуть знаки a4 и a5 . После этой операции сумма будет равна −1+1+1+1+1=3 . Можно показать, что мы не можем сделать сумму больше этого значения. В третьем наборе единственным вариантом является выбор индекса 1 .
A. Сумма-перевёртыш ограничение по времени на тест1 секунда ограничение по памяти на тест256 мегабайт вводстандартный ввод выводстандартный вывод Вам дан массив из n целых чисел a1,a2,…,an . Каждое число равно либо 1 , либо −1 . Вы должны выполнить следующую операцию над массивом a ровно один раз: Выбрать индекс i (1≤i<n ) и перевернуть знаки ai и ai+1 . Здесь переворачивание знака означает, что −1 будет заменено на 1 , а 1 станет −1 . Какое максимально возможное значение a1+a2+…+an можно получить после применения вышеописанной операции? Входные данные Каждый тест состоит из нескольких наборов входных данных. В первой строке находится одно целое число t (1≤t≤500 ) — количество наборов входных данных. Далее следует описание наборов входных данных. Первая строка каждого теста содержит одно целое число n (2≤n≤105 ) — длину массива a . Следующая строка содержит n целых чисел a1,a2,…,an (ai=1 либо ai=−1 ). Гарантируется, что сумма значений n по всем наборам входных данных не превосходит 105 . Выходные данные Для каждого набора входных данных в отдельной строке выведите максимально возможную сумму массива a , которую вы можете получить в результате применения одной операции. Пример входные данныеСкопировать 4 5 -1 1 1 -1 -1 5 1 1 -1 -1 -1 2 1 1 4 1 -1 -1 1 выходные данныеСкопировать 3 3 -2 4 Примечание В первом случае мы можем выбрать индекс 4 и перевернуть знаки a4 и a5 . После этой операции сумма будет равна −1+1+1+1+1=3 . Можно показать, что мы не можем сделать сумму больше этого значения. В третьем наборе единственным вариантом является выбор индекса 1 .
london L london Регистрация 30 Сен 2013 Сообщения 91 Репутация 14 Спасибо 0 Монет 0 4 Сен 2023 #2 Просуммируй все числа в массиве. Потом: если встретил две -1 подряд - то добавь 2 к сумме. Иначе, если есть хоть одна -1 то ничего не добавляем. Если ни одной -1 то вычитаем 2 из суммы
Просуммируй все числа в массиве. Потом: если встретил две -1 подряд - то добавь 2 к сумме. Иначе, если есть хоть одна -1 то ничего не добавляем. Если ни одной -1 то вычитаем 2 из суммы
sasha S sasha Регистрация 30 Янв 2013 Сообщения 109 Репутация 0 Спасибо 0 Монет 0 4 Сен 2023 #3 с тебя штука
AJIycapD A AJIycapD Регистрация 29 Окт 2013 Сообщения 89 Репутация 0 Спасибо 0 Монет 0 4 Сен 2023 #4 А как ты поймёшь, что это правильно, если сам не знаешь ничего?
проне П проне Регистрация 19 Авг 2013 Сообщения 86 Репутация 0 Спасибо 0 Монет 0 4 Сен 2023 #5 #include using namespace std; typedef long long ll; vectora; ll t,n,i,sum; int judge() { for(i=0;it; while(t--) { cin>>n; a.resize,sum=0; for(auto&&i:a)cin>>i,sum+=i; cout
#include using namespace std; typedef long long ll; vectora; ll t,n,i,sum; int judge() { for(i=0;it; while(t--) { cin>>n; a.resize,sum=0; for(auto&&i:a)cin>>i,sum+=i; cout
ЯРРАРАРААР Я ЯРРАРАРААР Регистрация 6 Сен 2013 Сообщения 81 Репутация 0 Спасибо 0 Монет 0 4 Сен 2023 #6 Англия