Submission #1607199


Source Code Expand

def solve(N, K, S):
    S = [x for x in S]
    T1 = []
    T2 = S.copy()
    dictS = {chr(ord('a')+i): S.count(chr(ord('a')+i)) for i in range(26)}
    dictT = dictS.copy()
    atoz = [chr(ord('a')+i) for i in range(26)]
    T2.sort()
    for i in range(N):
        dictS[S[i]] -= 1
        for j in range(0, len(T2)):
            c = T2[j]
            dictT[c] -= 1
            cnt = 0
            for x in atoz:
                cnt += min(dictS[x], dictT[x])
            cnt = N - 1 - i - cnt
            if S[i] != c:
                cnt += 1
            if K >= cnt:
                pos = j
                if S[i] != c:
                    K -= 1
                break
            dictT[c] += 1
        T1.append(T2[pos])
        T2.pop(pos)

    print(''.join(T1+T2))

#solve(3, 2, 'abc')
#solve(7, 2, 'atcoder')
#solve(7, 7, 'atcoder')
#solve(10, 3, 'helloworld')

N, K = list(map(int, input().split()))
S = input()
solve(N, K, S)

Submission Info

Submission Time
Task C - 辞書式順序ふたたび
User suzume
Language Python (3.4.3)
Score 100
Code Size 976 Byte
Status AC
Exec Time 32 ms
Memory 3064 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 16 ms 3064 KB
hand_1_1.txt AC 17 ms 3064 KB
hand_1_2.txt AC 16 ms 3064 KB
hand_1_3.txt AC 16 ms 3064 KB
hand_1_4.txt AC 16 ms 3064 KB
hand_1_5.txt AC 17 ms 3064 KB
hand_1_6.txt AC 16 ms 3064 KB
hand_1_7.txt AC 16 ms 3064 KB
hand_1_8.txt AC 16 ms 3064 KB
hand_2_0.txt AC 17 ms 3064 KB
hand_2_1.txt AC 16 ms 3064 KB
hand_2_10.txt AC 16 ms 3064 KB
hand_2_2.txt AC 17 ms 3064 KB
hand_2_3.txt AC 17 ms 3064 KB
hand_2_4.txt AC 17 ms 3064 KB
hand_2_5.txt AC 17 ms 3064 KB
hand_2_6.txt AC 17 ms 3064 KB
hand_2_7.txt AC 17 ms 3064 KB
hand_2_8.txt AC 17 ms 3064 KB
hand_2_9.txt AC 17 ms 3064 KB
hand_3_2.txt AC 17 ms 3064 KB
hand_3_3.txt AC 17 ms 3064 KB
hand_3_4.txt AC 17 ms 3064 KB
hand_3_5.txt AC 16 ms 3064 KB
hand_3_6.txt AC 17 ms 3064 KB
hand_4_2.txt AC 17 ms 3064 KB
hand_4_3.txt AC 17 ms 3064 KB
hand_4_4.txt AC 17 ms 3064 KB
hand_4_5.txt AC 17 ms 3064 KB
hand_4_6.txt AC 17 ms 3064 KB
random_1.txt AC 18 ms 3064 KB
random_10.txt AC 30 ms 3064 KB
random_11.txt AC 26 ms 3064 KB
random_12.txt AC 26 ms 3064 KB
random_13.txt AC 23 ms 3064 KB
random_14.txt AC 19 ms 3064 KB
random_15.txt AC 18 ms 3064 KB
random_2.txt AC 20 ms 3064 KB
random_3.txt AC 18 ms 3064 KB
random_4.txt AC 21 ms 3064 KB
random_5.txt AC 17 ms 3064 KB
random_6.txt AC 22 ms 3064 KB
random_7.txt AC 30 ms 3064 KB
random_8.txt AC 32 ms 3064 KB
random_9.txt AC 32 ms 3064 KB
sample_1.txt AC 17 ms 3064 KB
sample_2.txt AC 17 ms 3064 KB
sample_3.txt AC 16 ms 3064 KB
sample_4.txt AC 16 ms 3064 KB
small_1.txt AC 16 ms 3064 KB
small_2.txt AC 16 ms 3064 KB
small_3.txt AC 16 ms 3064 KB
small_4.txt AC 16 ms 3064 KB
small_5.txt AC 16 ms 3064 KB
small_6.txt AC 16 ms 3064 KB
small_7.txt AC 16 ms 3064 KB
small_8.txt AC 16 ms 3064 KB
small_9.txt AC 16 ms 3064 KB