在2077年,您是一位顶尖的“深空网络”工程师,负责维护一个位于遥远星系的分布式文件系统。 该系统的稳定运行对于星际通信至关重要。 现在,您需要编写一个模拟程序来测试和验证该文件系统的核心命令行功能。
这个星际文件系统是一个典型的树状结构。系统的根目录表示为 / 。系统初始化时,根目录下已经创建了一个名为 usr 的用户目录,而您的初始工作目录也正是 /usr。 您需要处理一连串的命令行指令。支持的指令集如下: mkdir: 在当前目录下,创建一个名为的新目录。如果同名目录已存在,则此指令将被忽略。 cd .. : 切换到上一级父目录。 cd: 切换到当前目录下的子目录。 ls : 列出当前目录下所有子目录的名称,并按字典序升序排列。 您将接收到 m 条指令。您的任务是模拟这些指令的执行,并输出所有 ls 指令的结果。
对于每一条 ls 指令,您需要输出其执行结果。每条 ls 的结果占一行,目录名之间用单个空格分隔。 特别地,如果当前目录下没有任何子目录, ls 指令应当输出一个单独的空格。
20 mkdir syadhzdgck mkdir irky cd .. cd usr ls cd .. ls mkdir wfanr cd usr ls cd .. ls mkdir fuuszuicsn cd wfanr cd .. cd fuuszuicsn cd .. mkdir ebw cd ebw ls
irky syadhzdgck usr irky syadhzdgck usr wfanr
考点:排序
限制 1 秒 / 256MB | 标准输入输出
参考方向:排序
先用 O(n log n) 排序把无序变有序,后续处理往往就简单了。
思路框架(排序 通法 · 非本题专属)
实现要点:在 C++ 中用 std::sort,Python 用 sorted();注意自定义比较函数的严格弱序。
复杂度:时间 O(n log n) | 空间 O(log n) ~ O(n)
该范式的通法易错点
本题在源数据中没有官方考点标签,方向由题面特征推断,仅供参考。
样例 1
20 / mkdir syadhzdgck / mkdir irky / cd .. / cd usr / ls / cd .. / ls / mkdir wfanr / cd usr / ls / cd .. / ls / mkdir fuuszuicsn / cd wfanrirky syadhzdgck / usr / irky syadhzdgck / usr wfanr解析由校招宝本地引擎整理(依据源站考点标签 / 人工判题标注 / 题面规模信号),非官方题解,仅供思路参考。
本题来源:2025年秋招-华为-10月23号留学生开发岗。