Size: a a a

2020 May 07

/dev/urandon ¯\_(ツ)_... in pro.algorithms
Господин Случай
Еще есть ограничение: если у  фигур менее чем 2-х общих вершин - не соединяем их
Тогда что это за условие?
источник

/dev/urandon ¯\_(ツ)_... in pro.algorithms
Не понятно откуда вообще взялись коннекшены между фигурами
источник

/dev/urandon ¯\_(ツ)_... in pro.algorithms
Если мы сами строим оболочку, то сами вольны любые абстракции придумывать
источник

/dev/urandon ¯\_(ツ)_... in pro.algorithms
Откуда снаружи коннекшен взялся?
источник

ГС

Господин Случай... in pro.algorithms
Это по условию.
Вот так быть может
источник

ГС

Господин Случай... in pro.algorithms
А вот так- нет
источник

ГС

Господин Случай... in pro.algorithms
На первом- 3 разных фигуры, для них можно найти
источник

ГС

Господин Случай... in pro.algorithms
На втором- не искать, никакие точки кроме вершин не должны участвовать
источник

/dev/urandon ¯\_(ツ)_... in pro.algorithms
Но нас же вообще не волнуют фигуры и их рёбра, если строим оболочки?
источник

/dev/urandon ¯\_(ツ)_... in pro.algorithms
Только вершины
источник

ГС

Господин Случай... in pro.algorithms
Да. тогда в предусловие вынесу.
источник

ГС

Господин Случай... in pro.algorithms
Спасибо, пойду читать.
источник

/dev/urandon ¯\_(ツ)_... in pro.algorithms
По сути, тут хотят на каждый запрос иметь оболочку на все вершины всех фигур и пообещали, что CRUD-операции очень локальны. Что позволяет надеяться на то, что полезно кешировать оболочки отдельных фигур
источник
2020 May 08

A

Anatoly in pro.algorithms
Всем привет
Нужен какой-нибудь алгоритм для последовательного подсвечивания символов в строке, но чтобы символы не матчились жадно по первому совпадению

Пример: в строке "красное красное яблоко" найти позиции символов "кко",
и чтобы это было вот так
"_к_расное красное ябло_ко_",
а НЕ вот так
"_к_расное _к_расн_о_е яблоко"

Т.е. чтобы было как можно больше символов вместе на соседних позициях, а не жадно по первому совпадению в стркое
источник

EZ

Evgeniy Zheltonozhsk... in pro.algorithms
Anatoly
Всем привет
Нужен какой-нибудь алгоритм для последовательного подсвечивания символов в строке, но чтобы символы не матчились жадно по первому совпадению

Пример: в строке "красное красное яблоко" найти позиции символов "кко",
и чтобы это было вот так
"_к_расное красное ябло_ко_",
а НЕ вот так
"_к_расное _к_расн_о_е яблоко"

Т.е. чтобы было как можно больше символов вместе на соседних позициях, а не жадно по первому совпадению в стркое
можно матчить максимальную построку сначала
источник

MB

Mikail Bagishov in pro.algorithms
Anatoly
Всем привет
Нужен какой-нибудь алгоритм для последовательного подсвечивания символов в строке, но чтобы символы не матчились жадно по первому совпадению

Пример: в строке "красное красное яблоко" найти позиции символов "кко",
и чтобы это было вот так
"_к_расное красное ябло_ко_",
а НЕ вот так
"_к_расное _к_расн_о_е яблоко"

Т.е. чтобы было как можно больше символов вместе на соседних позициях, а не жадно по первому совпадению в стркое
Выглядит как ДП.
источник

KK

Kirill Kaymakov in pro.algorithms
Да ему просто нужна дпха с максимальными равными подпослежовательностями поди
источник

MB

Mikail Bagishov in pro.algorithms
Самое тупое: dp[pref][flag][pat] - ответ для префикса строки длины pref, префикса паттерна длины pat, причем если flag=1, то pref-тый символ был взят, а храним количество пар соседних взятых символов
источник

AL

Alexander Litvinov in pro.algorithms
Приветствую.
Есть данные вида:
user|group
1|1
2|1
1|2
2|2
4|7
5|7
1|3
15|3

нужно объединить группы в одну, присвоив случайный идентификатор (уникальный) для которых есть хотя бы один общий элемент - user.  Минимальное количество элементов в группе 2.
То есть, для примера выше, ожидается выход
group | users
1&2|[1,2,15]
7|[4,5]


Как бы подступиться, подумал сначала про граф, но споткнулся на построении, так как ребро не user->user.
Может кто-то подтолкнет на нужный путь :)
источник

MB

Mikail Bagishov in pro.algorithms
Alexander Litvinov
Приветствую.
Есть данные вида:
user|group
1|1
2|1
1|2
2|2
4|7
5|7
1|3
15|3

нужно объединить группы в одну, присвоив случайный идентификатор (уникальный) для которых есть хотя бы один общий элемент - user.  Минимальное количество элементов в группе 2.
То есть, для примера выше, ожидается выход
group | users
1&2|[1,2,15]
7|[4,5]


Как бы подступиться, подумал сначала про граф, но споткнулся на построении, так как ребро не user->user.
Может кто-то подтолкнет на нужный путь :)
Ну, если юзер лежит в нескольких группах, надо их все друг с другом склеить.
Эту операцию надо проделать для каждого юзера.

Реализуется через дфс или систему непересекающихся множеств.
источник