Название Описание
Принимая во внимание последовательности, в котором выбранный период непрерывного и непустого и что этот максимум.
Формат ввода
Первая строка является положительным целым числом NN N, обозначает длину последовательности.
Вторая строка содержит NN N абсолютное значение не больше , чем 1000010000 . 1 0 0 0 целое число от 0 AiA_i A I , эта последовательность , описанную колонку.
Формат вывода
Целое число, наибольший подфрагмент и сколько. Минимальная длина сегмента к югу находится . 11 1
Пример ввода и вывода
Input # 1
7 2 -4 3 -1 2 -4 3
Выход # 1
4
Описание / Советы
[Пример Описание]
2, -4,3, -1,2, -4,32, -4,3, -1,2, -4,3 2 , - . 4 , 3 , - . 1 , 2 , - . 4 , 3, максимальное суб-сегменты и 4, вспомогательный сегмент 3, -1,23, 1,2 3 , - . 1 , 2.
[Согласовано] с масштабом данных
Для 40% 40 \% . 4 0 % данных, существует N≤2000N 2000 ≤ N ≤ 2 0 0 0.
Для получения 100% 100 \% . 1 0 0 % данных, существует N≤200000N 200000 ≤ N ≤ 2 0 0 0 0 0.
По-прежнему трудно популярности - и думал, что префикс акридинового -
1 #include <. Бит / STDC ++ H> 2 с использованием пространства имен STD; 3 INT п, к, ANS, Minn, maxn = - 9999 ; 4 Int в [ 200010 ], B [ 200010 ]; 5 INT основных () 6 { 7 CIN >> п; 8 для ( INT I = 1 ; г <= п; я ++ ) 9 { 10 CIN >> а [I]; 11 а [я] + = а [i - 1 ]; // 前缀和 12 } 13 В [ . 1 ] = A [ 1. ]; Minn = мин ( 0 [, A . 1 ]); // А может быть отрицательным [1] . 14 для ( INT I = 2 ; я <= п, я ++ ) 15 { 16 Б [I] = а [I] -minn; // Minn вычитанием минимального требуемого префикса . 17 Minn = мин (Minn, а [I]); // помнить , чтобы обновить 18 } 19. для ( INT I = 1. ; I < п =; я ++ ) 20 MAXN = макс (MAXN, в [I]); // в [I] для окончания максимума я и суб-сегмент 21 является COUT << MAXN; 22 возвращения 0 ; 23 }