Size: a a a

2020 December 20

K

Kotomord_λapki in pro.algorithms
Размер графа?
источник

mm

mhmd mlh in pro.algorithms
Максимум 50 вершин
источник

mm

mhmd mlh in pro.algorithms
Alexander Kryukov (kruall)
Находишь компоненты сильной связности в графе, сжимаешь каждую до вершины, дальше если получился бамбук, то значит вершина есть, и это корень, иначе нет такой
Я нашёл компоненты сильной связности с алгоритмом Kosaraju но не знаю, что делать дальше
источник

K

Kotomord_λapki in pro.algorithms
То есть 4 степень допустима?
источник

AK

Alexander Kryukov (k... in pro.algorithms
Номеруешь каждую компоненту, переделывает граф так, чтобы вместо вершин были компоненты, петли вида ребро в само себя выкидываешь, повторяющиеся тоже.
В итоге, в графе должно быть не более одного исходящего ребра из каждой компоненты, не более одного входящего ребра и граф должен быть связным. Та компонента у которой нет входящего ребра, будет корнем и любая вершина из нее будет подходить
источник

mm

mhmd mlh in pro.algorithms
Alexander Kryukov (kruall)
Номеруешь каждую компоненту, переделывает граф так, чтобы вместо вершин были компоненты, петли вида ребро в само себя выкидываешь, повторяющиеся тоже.
В итоге, в графе должно быть не более одного исходящего ребра из каждой компоненты, не более одного входящего ребра и граф должен быть связным. Та компонента у которой нет входящего ребра, будет корнем и любая вершина из нее будет подходить
В переделонной графе должен быть весь компонент или достаточно первая вершина из компонента?
источник

AK

Alexander Kryukov (k... in pro.algorithms
Там без разницы, самое главное все ребра исходящие из компоненты перенести
источник

mm

mhmd mlh in pro.algorithms
Это то что у меня получилось пока что https://pastebin.com/kD1xpeGv
источник
2020 December 21

mm

mhmd mlh in pro.algorithms
Alexander Kryukov (kruall)
Номеруешь каждую компоненту, переделывает граф так, чтобы вместо вершин были компоненты, петли вида ребро в само себя выкидываешь, повторяющиеся тоже.
В итоге, в графе должно быть не более одного исходящего ребра из каждой компоненты, не более одного входящего ребра и граф должен быть связным. Та компонента у которой нет входящего ребра, будет корнем и любая вершина из нее будет подходить
Когда делаю граф из компонентов это надо сделать через две внутренние циклы или есть способ быстрее?
источник

AK

Alexander Kryukov (k... in pro.algorithms
Ну там в любом случае придется пройти по всем вершинам, так что да. Сначала цикл по компонентам, потом цикл по вершинам из этой компоненты
источник

DP

Defragmented Panda in pro.algorithms
я нашел маленькие компиляторы или интерпретаторы:
tiny basic (~3kb) https://jeelabs.org/book/1549a/index.html
brainfuck (1kb?) https://github.com/Adancurusul/some_tiny_interpreters

больше 16кб:
forth (19kb+1kb) https://mecrisp-stellaris-folkdoc.sourceforge.io/quickstart.html
ulisp (32kb+2kb) http://www.ulisp.com/show?3M
tinygo (~100kb) https://tinygo.org/
pascal (??)
javascipt (20kb...64kb) https://jeelabs.org/book/1548e/index.html
асм (>128kb)
https://github.com/nanochess/tinyasm/

но для программу считающую форт код называют компилятором. а для джаваскрипта интерпретатором, мне не понятно как искать такие вещи

и я ожидал что компилятор \ интерпретатор ASM или forth будет меньше чем tiny BASIC. чем tiny BASIC и brainfuck так фундаментально отличаются от всех остальных языков, что их компиляторы\ интерпретаторы такие маленькие?

с точки зрения алгоритмов по которым работают эти программы, по какому ключевому слову я могу отличить эти две группы программ?
источник

A

Adevald in pro.algorithms
Здравствуйте. Есть одна задача, которую я даже не знаю как решать. Не думаю что мне помогут тут прямо всё решить (хотя всякое бывает), но надеюсь хотя бы подскажут под какой метод криптографии копать.

Есть некоторое произвольное количество параметров. Параметры = числа.
Есть некоторый 16-ти, 32-х значный хэш из цифр и букв, а также seed для генерации хэша из этих параметров.
Параметры должны с помощью сида однозначно кодироваться и декодироваться.
Основное свойство этого хеша в том, что изменение хеша (например на случаном месте в хеше поменять букву C -> на D) +- пропорционально изменяет параметры. При этом какой параметр (или параметры) будет изменён и в какую сторону неизвестно.
Ещё желательно чтобы у каждого параметра был некотороый коэффициент, который будет указывать сложность движения в одну сторону по сравнению с другой.
источник

AK

Alexander Kryukov (k... in pro.algorithms
Defragmented Panda
я нашел маленькие компиляторы или интерпретаторы:
tiny basic (~3kb) https://jeelabs.org/book/1549a/index.html
brainfuck (1kb?) https://github.com/Adancurusul/some_tiny_interpreters

больше 16кб:
forth (19kb+1kb) https://mecrisp-stellaris-folkdoc.sourceforge.io/quickstart.html
ulisp (32kb+2kb) http://www.ulisp.com/show?3M
tinygo (~100kb) https://tinygo.org/
pascal (??)
javascipt (20kb...64kb) https://jeelabs.org/book/1548e/index.html
асм (>128kb)
https://github.com/nanochess/tinyasm/

но для программу считающую форт код называют компилятором. а для джаваскрипта интерпретатором, мне не понятно как искать такие вещи

и я ожидал что компилятор \ интерпретатор ASM или forth будет меньше чем tiny BASIC. чем tiny BASIC и brainfuck так фундаментально отличаются от всех остальных языков, что их компиляторы\ интерпретаторы такие маленькие?

с точки зрения алгоритмов по которым работают эти программы, по какому ключевому слову я могу отличить эти две группы программ?
Отсутствие импортов из других файлов, ну и еще отсутсвием деталей. Все что более 16кб интерпретаторы используемых языков, в то время как менее в твоем списке это либо изотеричееский либо обрезанный по самое нехочу язык
источник

ВГ

Влад Горбачёв... in pro.algorithms
Всем привет
источник

DP

Defragmented Panda in pro.algorithms
математическое доказательство корректности программы

какие языки программирования помогают этому?

какие языки программирования хуже всего для этого?
источник

A

Andrey in pro.algorithms
Defragmented Panda
математическое доказательство корректности программы

какие языки программирования помогают этому?

какие языки программирования хуже всего для этого?
Coq
источник

A

Andrey in pro.algorithms
Вообще конечно "математически доказывать корректность" можно и на бумажке
источник

A

Andrey in pro.algorithms
Правильней говорить о "формальной верификации"
источник

DP

Defragmented Panda in pro.algorithms
имею ввиду из более популярных типа си
источник

A

Andrey in pro.algorithms
Корректность программы на си почти нереально доказать
источник