Список вопросов
Страна замов. Напишите программу на Python
10th December, 18:14
410
0
На листе клетчатой бумаги рисуют выпуклый 100-угольник с вершинами в узлах сетки. Какое наибольшее число диагоналей этого 100-угольника может идти по линиям сетки?
7th November, 15:29
266
0
Рассмотрим все прямоугольники, длины сторон которых выражены целым числом метров, и периметр которых (в метрах) численно равняется площади (в метрах квадратных). Найдите суммарную площадь всех таких, разных по размеру сторон, прямоугольников.Прямоугольники, отличающиеся порядком сторон, например, 10 * 20 и 20 * 10 считаем одинаковыми.
7th October, 20:57
733
0
Кто и за сколько может написать программу управления курсором?
2nd October, 23:48
501
3
Как авторизоваться на novafilm.tv при помощи cURL?
2nd October, 23:33
381
3
Верстка, position:relative создает пустое место
2nd October, 23:31
324
2
Что улучшить в переводе Apache Public License?
2nd October, 23:29
327
1
Формирование кода видео Вконтакте
2nd October, 23:23
400
3
IPad2 с 3G из Штатов?
2nd October, 23:18
373
5
А будет ли tcpdump видеть ack flood?
2nd October, 23:14
289
2
Альфа банк и странное смс мошенничество?
2nd October, 23:05
665
6
Софт для "ремонта" поврежденного h264 видео?
2nd October, 22:55
301
3
Scrapy — Python
2nd October, 22:54
312
4
Помощь с доставкой из США?
2nd October, 22:47
339
3
Создание stop-motion ролика
2nd October, 22:41
374
5
Верстка ul/li в несколько колонок?
2nd October, 22:41
274
13
Существует ли поисковик, отсортированный по дате?
2nd October, 22:32
309
3
Вопрос к пользователям HTC HD7?
2nd October, 22:32
329
2
Как получить путь к аватару пользователя когда он авторизируется на сайте через openid google?
2nd October, 22:20
345
2
Что случилось с Кенгуру.ТВ?
2nd October, 22:19
380
3
Решение задачи Троичная строка с Codeforces
Без пояснения   Просмотров: 134
Вам дана строка s, каждый символ которой — 1, 2 или 3. Вы должны выбрать кратчайшую непрерывную подстроку s, в которой каждый из трех символов встречается хотя бы один раз.
Непрерывная подстрока s — строка, которую можно получить из s удалением какого-то количества (возможно, ни одного) символов из начала строки s и какого-то количества (возможно, ни одного) символов из конца строки s.
Непрерывная подстрока s — строка, которую можно получить из s удалением какого-то количества (возможно, ни одного) символов из начала строки s и какого-то количества (возможно, ни одного) символов из конца строки s.
Код
#include using namespace std; void solve() { int j; bool b1 = 0, b2 = 0, b3 = 0; string s, t = ""; cin >> s; s += "0"; vector ed, bg, res; for(int i = 0; i < s.size() - 1; ++i){ if(s[i] != s[i + 1]){ t+=s[i]; ed.push_back(i); } } s.insert(s.begin(), 1, '0'); for(int i = 0; i < s.size() - 1; ++i){ if(s[i] != s[i + 1]) bg.push_back(i); } if(t.size() < 3){ cout << 0 << endl; return; } for(int i = 0; i < t.size() - 2; ++i){ if(int(t[i]) +int(t[i + 1]) + int(t[i + 2]) == 150) res.push_back(i); } if(res.size() == 0){ cout << 0 << endl; return; } int mn = INFINITY; for(int i = 0; i < res.size(); ++i){ mn = min(bg[res[i] + 2] - ed[res[i]] + 1, mn); } cout << mn << endl; } int main() { int t; cin >> t; while(t--){ solve(); } return 0; }
 
 
 
 
 
Автор: Администратор
