小慕正在开发一个网络文件存储系统,其中大量文件按照不同文件夹分类存放。现在需要对文件进行整理排序,以便快速查找特定文件。每个文件都有一个创建(用整数表示,代表从某个特定时刻到文件创建时所经过的秒数),并且文件夹之间存在。 小慕需要实现一个函数,对给定文件夹下的所有文件(包括子文件夹中的文件)按照创建时间戳进行排序,可以使用熟悉的排序算法。
提示:带虚线的词点一下有通俗解释。
输入描述
首先输入一个整数n,表示接下来要输入的文件及文件夹信息的行数。 然后输入一指定文件夹的名称,用于说明获取哪个文件夹下的全部文件,并进行排序; 最后逐行输入文件或文件夹信息,行数为第一句输入的整数n。 对于文件,每行格式为: 文件名 创建时间戳;对于文件夹,每行格式为:文件夹名 -1(-1 表示这是一个文件夹)。如果文件夹包含子文件或子文件夹,则在后序行中继续输入其内。通过缩进(四个短横线)表示层级关系(例如,子文件或子文件的信息相比其父文件夹缩进4个短横线)。
输出描述
输出排序后的文件列表,每行格式为:文件名 创建时间戳,按照时间戳从小到大进行排序。 补充说明: 文件和文件夹名称只会出现A-Za-z0-9和.不会出现特殊字符。不会出现相同时间戳的文件,不会出现重名的文件或文件夹。 如果文件系统中不存在该文件,则返回字符串"No file"
示例
示例 1
输入
5 Documents Documents -1 ----file1.txt 1600000000 ----file2.txt 1600000100 ----SubFolder1 -1 --------file3.txt 1600002000
输出
file1.txt 1600000000 file2.txt 1600000100 file3.txt 1600002000
示例 2
输入
5 Video Video -1 ----SubFolder0 -1 ----SubFolder1 -1 ----SubFolder3 -1 --------SubFolder4 -1
输出
No file
说明:如果待排序的文件夹下没有文件,则返回"No file"
示例 3
输入
7 SubFolder2 Documents -1 ----SubFolder1 -1 --------file0.txt 1600000900 ----SubFolder2 -1 --------file1.txt 1600000300 --------file2.txt 1600000200 --------file3.txt 1600000100
输出
file3.txt 1600000100 file2.txt 1600000200 file1.txt 1600000300
说明:第一行表示总计有7行文件和文件夹信息输入 第二行表示需要排序SubFolder2路径下的文件夹 第三行开始为输入的7行文件和文件夹信息
时间限制 1000 ms · 内存限制 128 MB