Editorial for Podudarajuće Permutacije
Submitting an official solution before solving the problem yourself is a bannable offence.
Author:
U ovom zadatku je potrebno zameniti mesta nekim članovima dva niza i naći na koliko mesta mogu najviše da se poklapaju. Ako gledamo sva pojavljivanja broja u nizu
i nizu
(i oznčimo ove vrednosti sa npr.
i
) vidimo da
može da učestvuje u najviše
preklapanja. Stoga ako izračunamo nizove
i
gde vrednost
predstavlja broj pojavljivanja broja
u nizu
, a
predstavlja broj pojavljivanja broja
u nizu
, vidimo da je broj preklapanja sigurno najviše
.
Možemo primetiti da je i ovo uvek moguće dostići tako što unapred izaberemo tih parova koje ćemo upariti, ispermutujemo niz tako da se oni upare, i ostatak ispermutovali proizvoljno. Implementacija ovog algoritma se radi lako u
Mogući pristup koji nije tačan je da se oba niza samo sortiraju. Ovaj pristup ima eksplicitan kontraprimer u slučaju
Comments
kod?
Pazi kamen!