1#include <iostream>2#include <string>3usingnamespacestd;45voidmygetline(char*pc)6{7charc;8while((c=getchar()) !='\n'&& c !=EOF)910*pc++ =c;1112*pc ='\0';13}1415intmain()16{17intP;18scanf("%d",&P);//表示需要进行正规化操作的路径个数19stringnow,str;//表示当前目录20cin>>...
CSP201604-3 路径解析 思路分析: 这道题要求把所有的路径都转化成不含".."或"."的绝对路径输出,首先我们对于输入的字符串就要判断它是绝对路径还是相对路径,所以我们读入的字符串首先判断str【0】==‘/’。 对于相对路径,我们将根节点和这个相对路径做一个拼接,转化成绝对路径。 接下来就是对".."和"."以及...
csp201604-3路径解析 标签: 算法 数据结构 字符串路径解析 Examples 题目分析 这是一道t3,所以要设计好解题框架 首先是路径采用字符串数组来描述 首先将输入的当前目录进行存储,然后对输入的路径进行正规化操作 void tran(const string& s) { if (s.empty()||s.at(0)==' ')//判断是否为空 { for (int ...
csp 201604-3路径解析 一道简单模拟,主要是读入,这题如果会读入就太简单了 用stringstream path="/d1/d2/d3" stringstream ss(path); while(getline(ss,dir,'/')) 的结果就是 “”//第一次为空,因为上来就是‘/’ d1 d2 d3 就是每次读到'/'就停,并且把之前读的放到dir里,dir也是string类型的 #...
csp 201604-3路径解析 一道简单模拟,主要是读入,这题如果会读入就太简单了 用stringstream path="/d1/d2/d3" stringstream ss(path); while(getline(ss,dir,'/')) 的结果就是 “”//第一次为空,因为上来就是‘/’ d1 d2 d3 就是每次读到'/'就停,并且把之前读的放到dir里,dir也是string类型的 ...
csp201604 - 3 路径解析 题意解法 本题让我们把带有重复命令的路径转化为一个标准路径,是一道相对简单的题目。 做本题时考虑: 应该如何将多余的/省略 使用什么数据结构来处理文件路径 如何抵消相对路径与绝对路径的区别 由于最后的标准格式中/符号规定了使用标准固定,所以只需要将输入路径的文件名提取出来。所以在处...
CCF CSP 201604-3 路径解析 问题描述 在操作系统中,数据通常以文件的形式存储在文件系统中。文件系统一般采用层次化的组织形式,由目录(或者文件夹)和文件构成,形成一棵树的形状。文件有内容,用于存储数据。目录是容器,可包含文件或其他目录。同一个目录下的所有文件和目录的名字各不相同,不同目录下可以有名字相同的...
CCF CSP 201604-3 路径解析 问题描述 在操作系统中,数据通常以文件的形式存储在文件系统中。文件系统一般采用层次化的组织形式,由目录(或者文件夹)和文件构成,形成一棵树的形状。文件有内容,用于存储数据。目录是容器,可包含文件或其他目录。同一个目录下的所有文件和目录的名字各不相同,不同目录下可以有名字相同的...