题目名称 | 2907. [USACO Feb18] 目录遍历 |
---|---|
输入输出 | dirtraverse.in/out |
难度等级 | ★★ |
时间限制 | 1000 ms (1 s) |
内存限制 | 256 MiB |
测试数据 | 10 |
题目来源 | WHZ0325 于2018-03-02加入 |
开放分组 | 全部用户 |
提交状态 | |
分类标签 | |
分享题解 |
通过:8, 提交:22, 通过率:36.36% | ||||
WHZ0325 | 100 | 0.176 s | 4.98 MiB | C++ |
胡嘉兴 | 100 | 0.176 s | 5.65 MiB | C++ |
@@@ | 100 | 0.420 s | 7.18 MiB | C++ |
Ceres | 100 | 0.457 s | 16.77 MiB | C++ |
Ceres | 100 | 0.460 s | 16.54 MiB | C++ |
Ceres | 100 | 0.469 s | 16.30 MiB | C++ |
Ceres | 100 | 0.494 s | 14.35 MiB | C++ |
Ceres | 100 | 0.637 s | 16.65 MiB | C++ |
@@@ | 90 | 0.432 s | 7.18 MiB | C++ |
Ceres | 90 | 0.655 s | 15.42 MiB | C++ |
关于 目录遍历 的近10条评论(全部评论) |
---|
奶牛 Bessie 令人惊讶地精通计算机。她在牛棚的电脑里用一组文件夹储存了她所有珍贵的文件,比如:
bessie/
folder1/
file1
folder2/
file2
folder3/
file3
file4
只有一个“顶层”的文件夹,叫做 bessie。
Bessie 可以浏览任何一个她想要访问的文件夹。从一个给定的文件夹,每一个文件都可以通过一个“相对路径”被引用。在一个相对路径中,符号“..”指的是上级目录。如果 Bessie 在 folder2 中,她可以按下列路径引用这四个文件:
../file1
file2
../../folder3/file3
../../file4
Bessie 想要选择一个文件夹,使得从该文件夹出发,对所有文件的相对路径的长度之和最小。
第一行包含一个整数 $N$($2≤N≤100,000$),为所有文件和文件夹的总数量。为了便于输入,每个对象(文件或文件夹)被赋予一个唯一的 $1$ 至 $N$ 之间的 ID,其中 ID 1 指的是顶层文件夹。第i行编号为i.接下来有 $N$ 行。每行的第一项是一个文件或是文件夹的名称。名称仅包含小写字母 a-z 和数字 0-9,长度至多为 $16$ 个字符。名称之后是一个整数 $m$。如果 $m$ 为0,则该对象是一个文件。如果 $m>0$,则该对象是一个文件夹,并且该文件夹下共有 $m$ 个文件或文件夹。在 $m$ 之后有 $m$ 个整数,为该文件夹下的对象的 ID。
输出所有文件的相对路径的长度之和的最小值。注意这个值可能超过 $32$ 位整数的表示范围。
8 bessie 3 2 6 8 folder1 2 3 4 file1 0 folder2 1 5 file2 0 folder3 1 7 file3 0 file4 0
42
这个输入样例描述了上面给出的样例目录结构。
最优解是选择 folder1。从这个文件夹出发,相对路径分别为:
file1
folder2/file2
../folder3/file3
../file4
USACO 2018 February Gold Directory Traversal
供题:Mark Gordon