Submission #3045655
Source Code Expand
s = input() k = int(input()) alphabets = sorted(set(list(s))) # 答えとなるsubstringは必ずK文字以下 res = set() # 頭文字(alphabetsの添字) prefix = 0 while len(res)<k: # 頭文字のみの場合 res.add(alphabets[prefix]) for i in range(len(s)): #print(i,res) if s[i]==alphabets[prefix]: # 2文字以上の部分文字列をresに追加 length = 2 while length<=k: if i+length>len(s): break res.add(s[i:i+length]) length += 1 prefix += 1 print(sorted(res)[k-1])
Submission Info
Submission Time | |
---|---|
Task | C - K-th Substring |
User | morio__ |
Language | Python (3.4.3) |
Score | 300 |
Code Size | 640 Byte |
Status | AC |
Exec Time | 31 ms |
Memory | 3064 KB |
Judge Result
Set Name | Sample | Subtask | All | ||||||
---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 200 / 200 | 100 / 100 | ||||||
Status |
|
|
|
Set Name | Test Cases |
---|---|
Sample | 0_000.txt, 0_001.txt, 0_002.txt |
Subtask | 0_000.txt, 0_001.txt, 0_002.txt, 1_003.txt, 1_004.txt, 1_005.txt, 1_006.txt, 1_007.txt, 1_008.txt, 1_009.txt, 1_010.txt |
All | 0_000.txt, 0_001.txt, 0_002.txt, 1_003.txt, 1_004.txt, 1_005.txt, 1_006.txt, 1_007.txt, 1_008.txt, 1_009.txt, 1_010.txt, 2_011.txt, 2_012.txt, 2_013.txt, 2_014.txt, 2_015.txt, 2_016.txt, 2_017.txt, 2_018.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
0_000.txt | AC | 17 ms | 3064 KB |
0_001.txt | AC | 17 ms | 3064 KB |
0_002.txt | AC | 17 ms | 3060 KB |
1_003.txt | AC | 18 ms | 3064 KB |
1_004.txt | AC | 17 ms | 3064 KB |
1_005.txt | AC | 17 ms | 3064 KB |
1_006.txt | AC | 17 ms | 3064 KB |
1_007.txt | AC | 18 ms | 3064 KB |
1_008.txt | AC | 17 ms | 3060 KB |
1_009.txt | AC | 17 ms | 3064 KB |
1_010.txt | AC | 17 ms | 3060 KB |
2_011.txt | AC | 31 ms | 3064 KB |
2_012.txt | AC | 31 ms | 3060 KB |
2_013.txt | AC | 18 ms | 3064 KB |
2_014.txt | AC | 19 ms | 3060 KB |
2_015.txt | AC | 18 ms | 3064 KB |
2_016.txt | AC | 19 ms | 3064 KB |
2_017.txt | AC | 19 ms | 3064 KB |
2_018.txt | AC | 19 ms | 3064 KB |