# 0388. Longest Absolute File Path ###### tags: `Leetcode` `Medium` `Stack` Link: https://leetcode.com/problems/longest-absolute-file-path/ ## 思路 先把字符串根据"\n"分,然后根据"\t"的个数看它是在哪个level stack里面存的是每个level对应的长度(是加了末尾'\'的长度) ## Code ```java= class Solution { public int lengthLongestPath(String input) { Stack<Integer> stack = new Stack<>(); stack.push(0); int maxLen = 0; for(String s:input.split("\n")){ int lev = s.lastIndexOf("\t")+1; while(lev+1<stack.size()) stack.pop(); int len = stack.peek()+s.length()-lev+1; stack.push(len); if(s.contains(".")){ maxLen = Math.max(maxLen, len-1); } } return maxLen; } } ```
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up