AT_abc288_b.[ABC288B] Qualification Contest

入门

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

有 NN 个人参加了一场比赛,第 ii 名的人的用户名为 SiS_i。
请将前 KK 名的用户名按字典序输出。

什么是字典序?字典序简单来说就是“单词在字典中出现的顺序”。更严格地说,对于两个不同的字符串 SS 和 TT,判断它们大小的算法如下:

下面用 SiS_i 表示“SS 的第 ii 个字符”。如果 SS 的字典序小于 TT,记作 S<TS < T,大于则记作 S>TS > T。

  1. 设 LL 为 SS 和 TT 中较短的字符串的长度。对于 i=1,2,…,Li=1,2,\dots,L,依次比较 SiS_i 和 TiT_i 是否相等。
  2. 如果存在 Si≠TiS_i \neq T_i 的 ii,则取最小的这样的 ii,记为 jj。比较 SjS_j 和 TjT_j,如果 SjS_j 的字母顺序小于 TjT_j,则 S<TS < T,否则 S>TS > T,算法结束。
  3. 如果所有 ii 都有 Si=TiS_i = T_i,则比较 SS 和 TT 的长度,若 SS 比 TT 短,则 S<TS < T,否则 S>TS > T,算法结束。

输入格式

输入通过标准输入给出,格式如下:

NN KK
S1S_1
S2S_2
⋮\vdots
SNS_N

输出格式

请将答案按行输出,每行一个用户名。

输入输出样例

  • 输入#1

    5 3
    abc
    aaaaa
    xyz
    a
    def

    输出#1

    aaaaa
    abc
    xyz
  • 输入#2

    4 4
    z
    zyx
    zzz
    rbg

    输出#2

    rbg
    z
    zyx
    zzz
  • 输入#3

    3 1
    abc
    arc
    agc

    输出#3

    abc

说明/提示

限制条件

  • 1≤K≤N≤1001 \leq K \leq N \leq 100
  • K,NK, N 为整数
  • SiS_i 是由小写英文字母组成的,长度不超过 1010 的字符串
  • 对于 i≠ji \neq j,有 Si≠SjS_i \neq S_j

样例解释 1

本场比赛有 55 人参加,第 11 名的用户名为 abc,第 22 名的用户名为 aaaaa,第 33 名的用户名为 xyz,第 44 名的用户名为 a,第 55 名的用户名为 def。前 33 名的用户名分别为 abc、aaaaa、xyz,按字典序排序后依次为 aaaaa、abc、xyz,请按此顺序输出。

由 ChatGPT 4.1 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页