清华大学历年考研复试机试真题 - 1329. 文件系统

该博客讲述了如何计算一个文件系统中所有文件夹路径长度的总和,包括具体例子和输入输出格式,涉及数据结构和文件系统知识。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

B君在设计一个文件系统。

B君在这个文件系统里,有 n 个文件夹。

B君想知道表示这 n 个文件夹所在路径的字符串,长度之和是多少。

一个文件夹的路径是,自己和所有祖先文件夹名字,以/分割连接起来,其中最前的一个文件夹前加/,最后一个文件夹后不加/。

比如对于样例,它的文件结构为

Users
wwwwodddd
Documents
Downloads
System
5个文件夹的的路径分别为(按照输入的顺序)

/Users
/Users/wwwwodddd
/Users/wwwwodddd/Documents
/System
/Users/wwwwodddd/Downloads
他们的长度分别是 6,16,26,7,26,所以所有长度和为 81。

特别注意,根目录/不是一个文件夹,他的路径长度不应被计算在最终答案中。每个字符串开头的/不是根目录的意思,这里的/应该被计入答案。

输入格式
输入第一行一个正整数 n,表示一共有 n 个文件夹。

以下 n 行每行描述一个文件夹,第 i 行描述第 i 个文件夹,有一个整数 fi 和一个字符串 si。

fi 表示第 i 个文件夹的父文件夹是第 fi 个文件夹,特别的,如果 fi 为 0,那么说明这个文件夹在根目录。

si 表示第 i 个文件夹的名字,这个名字一定由数字和大小写字母组成。

保证在同一个文件夹下不存在多个文件夹同名,保证每个文件夹的长度至多为12。

输出格式
输出一行一个整数,表示所有路径长度的和。

数据范围
1≤n≤1000,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值