CF-20A普及+/提高
路径转化
⏱ 2.0s💾 64MB
📋 题目描述
新的操作系统BerOS有一个很好的功能。在路径中,可以使用任意数量的字符'/'作为分隔符,而不是传统的一个'/'。例如,字符串//usr///local//nginx/sbin//和/usr/local/nginx///sbin是等效的。路径末尾的字符'/'(或一些这样的字符序列)仅在路径指向根目录时需要,根目录可以表示为单个字符'/'。
如果路径包含最少可能数量的字符'/',则称其为规范化路径。
您的任务是将给定的路径转换为规范化形式。
📥 输入格式
输入的第一行只包含小写拉丁字母和字符 '/' — 一些目录的路径。所有路径都至少以一个字符 '/' 开始。给定行的长度不超过100个字符,且不为空。
📤 输出格式
标准化形式的路径。
📝 样例 1
输入
//usr///local//nginx/sbin
输出
/usr/local/nginx/sbin
📚 来源
Problem:CF-20A
💡 题目讲解
1
理解题意
给你一个 Unix 文件路径(字符串),里面可能有多余的斜杠 /。比如:
- 连续好几个
/(像//或///) - 路径末尾多余的
/
你的任务是把路径规范化:
🎯 规则 1:把连续的多个
/合并成一个/🎯 规则 2:去掉路径末尾的/🎯 例外:如果规范化后只剩一个/(根目录),输出/
举个例子:
| 原始路径 | 规范化后 |
|---|---|
//usr///local//nginx/sbin | /usr/local/nginx/sbin |
/a///b//c/ | /a/b/c |
/// | / |
/home/ | /home |
很简单吧!就是把多余的斜杠"压缩"掉。
1 / 5