Buna treaba Sims, multumesc (multumim) ! Ai urmarit tot ce scria acolo ? E OK ? Daca gasiti greseli logice, sau daca aveti alte idei de optimizare sariti cu ele... complexitatea in momentul de fata este O(N^4) daca imi aduc bine aminte, insa se comporta mai bine in practica, in functie si de costurile din matrice. Pe vremuri, am luat AC cu algoritmul ungar (posibil chiar cu sursa asta) pe Timus (ceva cu trash din primul volum) si nu-mi intra in timp cu flux, dar pe atunci nu stiam sa implementez foarte eficient un flux si nici nu se prea stiau smenuri gen Dinic. In momentul de fata cred ca un flux implementat la sange il cam rupe, desi pe grafuri complete... cine stie ?

In orice caz, cred ca se poate implementa si in O(N^3) "curat", doar ca n-am mai dedicat foarte mult timp in acest sens. Intreaga idee a articolului a pornit de la un articol din Ginfo, care prezenta o metoda super simpla de a rezolva aceeasi problema in O(N^3), avand o singura belea: nu mergea. A mai fost curs de algoritm ungar si la lot acum cativa ani, si tin minte ca sursa aia pe unele teste mergea (foarte prost, mai prost ca sursa asta cu optimizarea), pe altele cicla (chiar cu n=20). Sper sa nu avem asemenea surprize si in acest caz, pentru ca problema e relativ delicata si iti dai seama mai greu daca e totul in regula...
Si, pana la urma
Voi ati inteles ceva din articol?
Recunosc ca e destul de incurcat, dar nu stiu cum s-ar putea expune mai usor, eu unul ma chinuisem multa vreme pe atunci sa-i dau de cap. Orice idei sunt binevenite !