Я думаю, что это то, что, вероятно, было решено раньше, и если бы у меня был правильный математический словарь, я мог бы, возможно, просто его перевести. Я пишу приложение, которое генерирует код для микроконтроллеров, таких как Arduino, и часть этого процесса отображает соединения, необходимые устройству, например датчику, самому микроконтроллеру.Алгоритм для сопоставления соединений
Проблема заключается не в том, что все соединения на микроконтроллере одинаково способны, некоторые могут выполнять только цифровой ввод-вывод, некоторые могут выполнять аналоговый аналоговый выход IO +, некоторые могут использовать цифровой аналоговый вход IO +, а некоторые могут делать как цифровые и аналогового ввода-вывода. Так что, если, например, у меня закончились чисто цифровые соединения IO и потребовалось больше, я бы все же мог использовать, например, цифровой вход IO + Analog In. Но если бы это был единственный цифровой аналоговый IO + в pin, и тогда мне действительно нужна была эта функциональность для другого соединения, тогда мне нужно было бы переместить его на другой тип булавки.
Так что в принципе мне нужен алгоритм, который может создать такой вид отображения, если он вообще возможен. Проблема немного в том, что детская игра с формованными блоками и соответствующими отверстиями, некоторые формы могут поместиться в несколько отверстий, некоторые не могут понять, можете ли вы поместить все данные блоки в отверстия?
Похоже, вы пришли к удовлетворительному ответу на этот случай, но в целом вам нужен термин «Задача назначения». –