Список вопросов
Как мне добавить решение на задач ?
14th February, 15:14
895
0
Что dsu(i) значит в коде "катание на коньках"
8th February, 18:16
264
1
Страна замов. Напишите программу на Python
10th December, 18:14
657
2
На листе клетчатой бумаги рисуют выпуклый 100-угольник с вершинами в узлах сетки. Какое наибольшее число диагоналей этого 100-угольника может идти по линиям сетки?
7th November, 15:29
488
0
Рассмотрим все прямоугольники, длины сторон которых выражены целым числом метров, и периметр которых (в метрах) численно равняется площади (в метрах квадратных). Найдите суммарную площадь всех таких, разных по размеру сторон, прямоугольников.Прямоугольники, отличающиеся порядком сторон, например, 10 * 20 и 20 * 10 считаем одинаковыми.
7th October, 20:57
953
0
Кто и за сколько может написать программу управления курсором?
2nd October, 23:48
666
3
Как авторизоваться на novafilm.tv при помощи cURL?
2nd October, 23:33
551
3
Верстка, position:relative создает пустое место
2nd October, 23:31
481
2
Что улучшить в переводе Apache Public License?
2nd October, 23:29
487
1
Формирование кода видео Вконтакте
2nd October, 23:23
590
3
IPad2 с 3G из Штатов?
2nd October, 23:18
536
5
А будет ли tcpdump видеть ack flood?
2nd October, 23:14
458
2
Альфа банк и странное смс мошенничество?
2nd October, 23:05
842
6
Софт для "ремонта" поврежденного h264 видео?
2nd October, 22:55
451
3
Scrapy — Python
2nd October, 22:54
469
4
Помощь с доставкой из США?
2nd October, 22:47
514
3
Создание stop-motion ролика
2nd October, 22:41
545
5
Решение задачи Удалите один элемент с Codeforces
Без пояснения   Просмотров: 138
Вам задан массив a, состоящий из n целых чисел.
Код
#include using namespace std; int main() { int n, temp, res = 1; cin >> n; vector a, r, l; for(int i = 0 ; i < n; ++i){ cin >> temp; a.push_back(temp); } r.push_back(1); for(int i = 1; i < a.size(); ++i){ if(a[i] > a[i - 1]){ r.push_back(r[i - 1] + 1); if(r[r.size() - 1] > res) res = r[r.size() - 1]; } else r.push_back(1); } reverse(a.begin(), a.end()); l.push_back(1); for(int i = 1; i < a.size(); ++i){ if(a[i] < a[i - 1]) l.push_back(l[i - 1] + 1); else l.push_back(1); } reverse(a.begin(), a.end()); reverse(l.begin(), l.end()); for(int i = 1 ; i < r.size() - 1; ++i){ if(a[i - 1 ] < a[i + 1]){ if(r[i - 1] + l[i + 1] > res) res = r[i - 1] + l[i + 1]; } } cout << res << endl; // 21 2 4 2 5 4 2 5 4 6 3 2 1 4 4 4 56 1 2 3 4 4 // for(auto i: r) // cout << i << " "; // cout << endl; // // for(auto i: l) // cout << i << " "; return 0; }
 
 
 
 
 
Автор: Администратор
