Submission #2702393


Source Code Expand

from collections import Counter

n, k = map(int, input().split())
s = input()

def diffs(s1, s2):
    return sum(a!=b for a, b in zip(s1, s2))

def possible(i, j, c, solution, best):
    head = solution + [c]
    diff = diffs(head, s[:i+1])
    if diff > k:
        return False
    remains = Counter(d for n, d in enumerate(best) if d and n != j)
    substring = Counter(s[i+1:])
    diff2 = sum((remains - substring).values())
    return diff + diff2 <= k

best = sorted(s)
solution = []
for i in range(n):
    for j, c in enumerate(best):
        if c == None:
            continue
        if possible(i, j, c, solution, best):
            solution.append(c)
            best[j] = None
            break

print(''.join(solution))

Submission Info

Submission Time
Task C - 辞書式順序ふたたび
User zehnpaard
Language Python (3.4.3)
Score 100
Code Size 761 Byte
Status AC
Exec Time 127 ms
Memory 3316 KB

Judge Result

Set Name All
Score / Max Score 100 / 100
Status
AC × 58
Set Name Test Cases
All hand_1_0.txt, hand_1_1.txt, hand_1_2.txt, hand_1_3.txt, hand_1_4.txt, hand_1_5.txt, hand_1_6.txt, hand_1_7.txt, hand_1_8.txt, hand_2_0.txt, hand_2_1.txt, hand_2_10.txt, hand_2_2.txt, hand_2_3.txt, hand_2_4.txt, hand_2_5.txt, hand_2_6.txt, hand_2_7.txt, hand_2_8.txt, hand_2_9.txt, hand_3_2.txt, hand_3_3.txt, hand_3_4.txt, hand_3_5.txt, hand_3_6.txt, hand_4_2.txt, hand_4_3.txt, hand_4_4.txt, hand_4_5.txt, hand_4_6.txt, random_1.txt, random_10.txt, random_11.txt, random_12.txt, random_13.txt, random_14.txt, random_15.txt, random_2.txt, random_3.txt, random_4.txt, random_5.txt, random_6.txt, random_7.txt, random_8.txt, random_9.txt, sample_1.txt, sample_2.txt, sample_3.txt, sample_4.txt, small_1.txt, small_2.txt, small_3.txt, small_4.txt, small_5.txt, small_6.txt, small_7.txt, small_8.txt, small_9.txt
Case Name Status Exec Time Memory
hand_1_0.txt AC 21 ms 3316 KB
hand_1_1.txt AC 21 ms 3316 KB
hand_1_2.txt AC 21 ms 3316 KB
hand_1_3.txt AC 21 ms 3316 KB
hand_1_4.txt AC 21 ms 3316 KB
hand_1_5.txt AC 21 ms 3316 KB
hand_1_6.txt AC 21 ms 3316 KB
hand_1_7.txt AC 21 ms 3316 KB
hand_1_8.txt AC 21 ms 3316 KB
hand_2_0.txt AC 21 ms 3316 KB
hand_2_1.txt AC 22 ms 3316 KB
hand_2_10.txt AC 21 ms 3316 KB
hand_2_2.txt AC 22 ms 3316 KB
hand_2_3.txt AC 22 ms 3316 KB
hand_2_4.txt AC 21 ms 3316 KB
hand_2_5.txt AC 21 ms 3316 KB
hand_2_6.txt AC 21 ms 3316 KB
hand_2_7.txt AC 21 ms 3316 KB
hand_2_8.txt AC 21 ms 3316 KB
hand_2_9.txt AC 21 ms 3316 KB
hand_3_2.txt AC 21 ms 3316 KB
hand_3_3.txt AC 21 ms 3316 KB
hand_3_4.txt AC 21 ms 3316 KB
hand_3_5.txt AC 21 ms 3316 KB
hand_3_6.txt AC 21 ms 3316 KB
hand_4_2.txt AC 23 ms 3316 KB
hand_4_3.txt AC 23 ms 3316 KB
hand_4_4.txt AC 23 ms 3316 KB
hand_4_5.txt AC 22 ms 3316 KB
hand_4_6.txt AC 22 ms 3316 KB
random_1.txt AC 25 ms 3316 KB
random_10.txt AC 109 ms 3316 KB
random_11.txt AC 83 ms 3316 KB
random_12.txt AC 88 ms 3316 KB
random_13.txt AC 64 ms 3316 KB
random_14.txt AC 35 ms 3316 KB
random_15.txt AC 26 ms 3316 KB
random_2.txt AC 33 ms 3316 KB
random_3.txt AC 28 ms 3316 KB
random_4.txt AC 45 ms 3316 KB
random_5.txt AC 24 ms 3316 KB
random_6.txt AC 54 ms 3316 KB
random_7.txt AC 69 ms 3316 KB
random_8.txt AC 127 ms 3316 KB
random_9.txt AC 120 ms 3316 KB
sample_1.txt AC 21 ms 3316 KB
sample_2.txt AC 21 ms 3316 KB
sample_3.txt AC 21 ms 3316 KB
sample_4.txt AC 21 ms 3316 KB
small_1.txt AC 21 ms 3316 KB
small_2.txt AC 21 ms 3316 KB
small_3.txt AC 21 ms 3316 KB
small_4.txt AC 21 ms 3316 KB
small_5.txt AC 21 ms 3316 KB
small_6.txt AC 21 ms 3316 KB
small_7.txt AC 21 ms 3316 KB
small_8.txt AC 21 ms 3316 KB
small_9.txt AC 21 ms 3316 KB