zoukankan      html  css  js  c++  java
  • SCUT

    https://scut.online/p/240

    就是要小心绝对路径中也有.和..出现。

    #include<bits/stdc++.h>
    using namespace std;
    #define ll long long
    
    struct path{
        string fullpath;
        void toparent(){
            int n;
            n=fullpath.length();
            for(int i=n-1;i>=0;i--){
                if(fullpath[i]=='/'){
                    fullpath=fullpath.substr(0,i);
                    if(fullpath=="")
                        fullpath="/";
                    return;
                }
            }
        }
    
        void tonext(string ne){
            if(ne==".")
                return;
            else if(ne==".."){
                toparent();
                return;
            }
            else{
                if(fullpath!="/")
                    fullpath+=(string)("/"+ne);
                else{
                    fullpath+=(string)(ne);
                }
            }
        }
    };
    
    int main(){
        int n;
        while(cin>>n){
            string cd,s;
            path cur;
            cur.fullpath="/";
            while(n--){
                cin>>cd>>s;
                int i=0;
                if(s[0]=='/'){
                    cur.fullpath="/";
                    i=1;
                }
                {
                    s+='/';
                    string tt;
                    for(;i<s.length();i++){
                        if(s[i]!='/'){
                            tt+=s[i];
                        }
                        else{
                            cur.tonext(tt);
                            tt="";
                        }
                    }
                }
    
            }
            cout<<cur.fullpath<<endl;
        }
    }
  • 相关阅读:
    利用JavaScriptCore实现以下简单的功能(平方和)
    UIScrollView 实现比例缩放
    iOS 本地加载js文件
    UIScrollView现实自动循环滚动
    UIScrollView现实循环滚动
    swift
    swift
    swift
    swift
    swift
  • 原文地址:https://www.cnblogs.com/Yinku/p/10403291.html
Copyright © 2011-2022 走看看