Created
December 26, 2013 17:22
-
-
Save cocodrips/8136312 to your computer and use it in GitHub Desktop.
SRM591 Div2 Med TLE. http://apps.topcoder.com/wiki/display/tc/SRM+591
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import itertools | |
class ConvertibleStrings: | |
def leastRemovals(self, A, B): | |
candi = list(set(A + B)) | |
perms = itertools.permutations(candi) | |
mini = 55 | |
for perm in perms: | |
perm_d = {} | |
for k, v in enumerate(perm): | |
perm_d[candi[k]] = v | |
mini = min(mini, self.count_diff(perm_d, A, B, mini)) | |
if mini == 0: | |
return 0 | |
return mini | |
def count_diff(self, d, A, B, mini): | |
count = 0 | |
for k, v in enumerate(A): | |
if d[A[k]] != B[k]: | |
count += 1 | |
if count >= mini: | |
return count | |
return count |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment