【(本科組)第十一屆藍橋杯省模擬賽答案】由1對括號,可以組成一種合法括號序列:()。 由2對括號,可以組成兩種合法括號序列:()()、(())。 由4對括號組成的合法括號序列一共有多少種?


合法括號序列

題目

問題描述
由1對括號,可以組成一種合法括號序列:()。
由2對括號,可以組成兩種合法括號序列:()()、(())。
由4對括號組成的合法括號序列一共有多少種?

答案提交
這是一道結果填空的題,你只需要算出結果后提交即可。本題的結果為一個整數,在提交答案時只填寫這個整數,填寫多余的內容將無法得分。

答案

14

題解

手算

這是一個填空題,只需要填寫答案即可。
這里深度為1的序列有一種為:()()()(),
深度為2的有7種:(())()()、()(())()、()()(())、(()()())、(()())()、()(()())、(())(()),
深度為3的有5種:((()))()、()((()))、((())())、(()(()))、((()())),
深度為4的有1種:(((()))),
所以答案為14。

代碼

public class LegalBrackets {
    public static int count = 0, n = 4;
    public static void main(String[] args) {
        f(0, 0);
        System.out.println(count);
    }

    public static void f(int left, int right) {
        if (left == n) {
            count++;
            return;
        }

        f(left + 1, right);
        if (left > right) {
            f(left, right + 1);
        }
    }
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM