1. 程式人生 > 資訊 >佳能中國石井俊幸:堅持單反、微單兩手抓的道路不動搖

佳能中國石井俊幸:堅持單反、微單兩手抓的道路不動搖

有效括號字串 定義:對於每個左括號,都能找到與之對應的右括號,反之亦然。詳情參見題末「有效括號字串」部分。

巢狀深度 depth 定義:即有效括號字串巢狀的層數,depth(A) 表示有效括號字串 A 的巢狀深度。詳情參見題末「巢狀深度」部分。

來源:力扣(LeetCode)
連結:https://leetcode-cn.com/problems/maximum-nesting-depth-of-two-valid-parentheses-strings
著作權歸領釦網路所有。商業轉載請聯絡官方授權,非商業轉載請註明出處。

class Solution {
    public int[] maxDepthAfterSplit(String seq) {
        int deep = 0;
        int left = 0;
        for (int i = 0; i < seq.length(); ++i) {
            if (seq.charAt(i) == '(') {
                left++;
            } else {
                left--;
            }
            deep = Math.max(deep, left);
        }
        deep = deep % 2 == 0 ? (deep / 2) : (deep / 2 + 1);
        int[] ans = new int[seq.length()];
        left = 0;
        for (int i = 0; i < seq.length(); ++i) {
            if (seq.charAt(i) == '(') {
                left++;
                if (left <= deep) {
                    ans[i] = 0;
                } else {
                    ans[i] = 1;
                }
            } else {
                if (left <= deep) {
                    ans[i] = 0;
                } else {
                    ans[i] = 1;
                }
                left--;
            }
        }
        return ans;
    }
}
心之所向,素履以往 生如逆旅,一葦以航