Halda s upraveným porovnáním

Pospojujte vrcholy hranou odshora dolů. Dostáváte jeden parametr

Pro spojení dvou vrcholů použijte funkci spoj(a, b).

Jako dárek dostáváte funkce Array.heappush(prvek, cmp) a Array.heappop(cmp). Jsou stejné jako minule, ale místo obyčejného porovnání < můžete zadat funkci cmp(a, b), která vrací, jestli a < b. Hodí se to, když chcete seřadit vrcholy odshora dolů: porovnávat totiž chcete jejich souřadnici y.

Počet vrcholů:
function pospojuj(vrcholy) {

}

Jak na to

Pro správné řešení stačí dopsat funkci cmp(a, b) a vrcholy naházet do haldy. Pak vytáhněte vrcholy jeden po druhém a kreslete čáru do předchozího vrcholu, který jste vytáhli.