ログインしてください。
提出 #32641757
ソースコード 拡げる
def main(N, K, S):
'''想定コード(下記URL)参照
https://github.com/E869120/kyopro_educational_90/blob/main/sol/006.cpp
'''
# 前処理
nex = [[N]*26]
for i in range(N-1, -1, -1):
a = nex[-1].copy()
a[ord(S[i])-ord("a")] = i
nex.append(a)
nex = nex[::-1]
# 一文字ずつ貪欲に決める
ans = []
curr_pos = 0
for i in range(K):
for j in range(26):
nex_pos = nex[curr_pos][j]
if N - nex_pos >= K-i:
ans.append(j)
curr_pos = nex_pos + 1
break
return "".join([chr(ord("a")+c) for c in ans])
N, K = map(int, input().split(" "))
S = input()
print(main(N, K, S))
提出情報
| 提出日時 | |
|---|---|
| 問題 | 006 - Smallest Subsequence(★5) |
| ユーザ | arakaki_tokyo |
| 言語 | PyPy3 (7.3.0) |
| 得点 | 5 |
| コード長 | 784 Byte |
| 結果 | AC |
| 実行時間 | 120 ms |
| メモリ | 111556 KiB |
ジャッジ結果
| セット名 | Sample | All | ||||
|---|---|---|---|---|---|---|
| 得点 / 配点 | 0 / 0 | 5 / 5 | ||||
| 結果 |
|
|
| セット名 | テストケース |
|---|---|
| Sample | 00_sample_00.txt, 00_sample_01.txt |
| All | 00_sample_00.txt, 00_sample_01.txt, 10_random_small_00.txt, 10_random_small_01.txt, 11_random_medium_00.txt, 11_random_medium_01.txt, 12_random_large_00.txt, 12_random_large_01.txt, 13_random_max_00.txt, 13_random_max_01.txt, 13_random_max_02.txt, 20_unique_small_00.txt, 20_unique_small_01.txt, 21_unique_medium_00.txt, 21_unique_medium_01.txt, 22_unique_large_00.txt, 22_unique_large_01.txt, 23_unique_max_00.txt, 23_unique_max_01.txt, 23_unique_max_02.txt, 30_equal_small_00.txt, 30_equal_small_01.txt, 31_equal_medium_00.txt, 31_equal_medium_01.txt, 32_equal_large_00.txt, 32_equal_large_01.txt, 33_equal_max_00.txt, 33_equal_max_01.txt, 33_equal_max_02.txt |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| 00_sample_00.txt | AC | 62 ms | 61704 KiB |
| 00_sample_01.txt | AC | 49 ms | 61976 KiB |
| 10_random_small_00.txt | AC | 46 ms | 62004 KiB |
| 10_random_small_01.txt | AC | 45 ms | 62208 KiB |
| 11_random_medium_00.txt | AC | 69 ms | 78264 KiB |
| 11_random_medium_01.txt | AC | 69 ms | 78332 KiB |
| 12_random_large_00.txt | AC | 101 ms | 106660 KiB |
| 12_random_large_01.txt | AC | 98 ms | 102720 KiB |
| 13_random_max_00.txt | AC | 107 ms | 110872 KiB |
| 13_random_max_01.txt | AC | 110 ms | 110224 KiB |
| 13_random_max_02.txt | AC | 90 ms | 103196 KiB |
| 20_unique_small_00.txt | AC | 53 ms | 64688 KiB |
| 20_unique_small_01.txt | AC | 49 ms | 61792 KiB |
| 21_unique_medium_00.txt | AC | 79 ms | 82164 KiB |
| 21_unique_medium_01.txt | AC | 63 ms | 77588 KiB |
| 22_unique_large_00.txt | AC | 87 ms | 94460 KiB |
| 22_unique_large_01.txt | AC | 107 ms | 110360 KiB |
| 23_unique_max_00.txt | AC | 108 ms | 111548 KiB |
| 23_unique_max_01.txt | AC | 108 ms | 109680 KiB |
| 23_unique_max_02.txt | AC | 106 ms | 108776 KiB |
| 30_equal_small_00.txt | AC | 52 ms | 63672 KiB |
| 30_equal_small_01.txt | AC | 53 ms | 65256 KiB |
| 31_equal_medium_00.txt | AC | 78 ms | 86756 KiB |
| 31_equal_medium_01.txt | AC | 71 ms | 77836 KiB |
| 32_equal_large_00.txt | AC | 99 ms | 105616 KiB |
| 32_equal_large_01.txt | AC | 120 ms | 110196 KiB |
| 33_equal_max_00.txt | AC | 109 ms | 111504 KiB |
| 33_equal_max_01.txt | AC | 109 ms | 111544 KiB |
| 33_equal_max_02.txt | AC | 111 ms | 111556 KiB |