Максимальний (зважений) повний підграф

Ця сторінка призначена для студентів, що вивчають курс дискретної математики та (або) теорії графів. Безпосередньо з неї ви можете виконати своє ІДЗ, навіть якщо у вас немає на комп’ютері MATLAB. Якщо ж у вас є MATLAB, перейдіть на цю сторінку: там у вас є можливість втрутитися у сценарій (програму) обчислень. А на цій сторінці задача про максимальний зважений повний підграф розв’язується шляхом зведення до задачі бінарного лінійного програмування.

Нехай G(VE) − граф, де V − множина вершин, а E − множина ребер. Максимальним (зваженим) повним підграфом називається максимальна за потужністю або загальною вагою підмножина вершин V1V, попарно суміжних між собою.

Задача про максимальний зважений повний підграф (максимальну зважену кліку) зводиться до задачі про максимальну (зважену) незалежну множину вершин для долученого графа G1(V, E1), де E1 − ребра, яких немає у графі G (доповнення графа G до кліки). Докладніше див. тут, стор. 48.

Для правильної роботи з цією сторінкою ваш браузер повинен підтримувати сценарії Java Script. Увімкніть їх.

Введіть вхідні дані в області введення нижче. У першій області треба (точніше, можна) ввести координати вершин для малювання графа та ваги вершин. Координати вершин задаються у лівій частині першої області. Вони задаються у вигляді матриці n×2: у першому стовпці − x координати, у другому − y-і. Числа можна задавати цілі, з десятичною точкою або в експоненційній формі. Числа розділяйте пробілами. Загальна кількість рядків у цій області введення визначає розмір графа n − кількість вершин. Ці вхідні дані (координати вершин) не є обов’язковими: якщо їх не задати, то граф буде малюватися у вигляді правильного n-кутника, а кількість вершин буде визначатися максимальним номером вершини у наступній області введення. Ваги вершин задаються у правій частині першої області введення у вигляді вектора довжиною n. Якщо ваги вершин не будуть задані, то вважається, що все вони одинакові − одиничні, і в цьому випадку буде розв’язуватися задача про максимальну кліку (незважену).

Наступна область введення − обов’язкова для заповнення. В ній визначається структура графа. Кожне ребро у графі поєднує дві вершини. Номери цих вершин задаються у вигляді матриці m×2 у цій області введення. Яку вершину вважати першою, а яку другою − не має значення. У цих стовпцях повинні бути натуральні числа від 1 до n включно. Числа розділяйте пробілами. Загальна кількість чисел у кожному з цих стовпців визначає потужність графа m − кількість ребер.

Координати вершин та їхні ваги
x   (пробіл)   y Вага

Ребра
v1  (пробіл)  v2