Compter la longueur paire

Jan 01 2023
GFG Problème du jour [ 01 janv. 2023 ]
Étant donné un nombre n, trouver le nombre de toutes les séquences binaires de longueur 2n de sorte que la somme des n premiers bits soit la même que la somme des n derniers bits. La réponse peut être très grande.
Photo du cabinet d'avocats Tingey Injury sur Unsplash

Étant donné un nombre n, trouver le nombre de toutes les séquences binaires de longueur 2n telles que la somme des n premiers bits est la même que la somme des n derniers bits.
La réponse peut être très grande. Donc, vous devez retourner la réponse modulo 10 ^ 9 + 7.

Exemple:

Input: n = 2
Output: 6
Explanation: There are 6 sequences of length 
2*n, the sequences are 0101, 0110, 1010, 1001, 
0000 and 1111.

Input: n = 1
Output: 2
Explanation: There are 2 sequence of length 
2*n, the sequence are 00 and 11.

Complexité temporelle attendue : O(n * log(n))
Complexité spatiale attendue : O(1)

La solution

class Solution {
    public long power(long x, long y, long p) {
        long res = 1l;
        x = x % p;
        while (y > 0) {
            if (y % 2 == 1)
                res = (res * x) % p;
            y = y >> 1;
            x = (x * x) % p;
        }
        return res;
    }

    public long modInverse(long n, long p) {
        return power(n, p - 2, p);
    }
    
    public int compute_value(int n) {
        // code here
        long ans = 1l;
        long mod = (long)(Math.pow(10, 9) + 7l);
        long compute = 1l;
        for(int i=0;i<n;i++) {
            compute = (compute%mod * (long)(n-i)%mod) % mod;
            compute = (compute%mod * modInverse(i+1, mod)%mod) % mod;
            ans = (ans%mod + (compute%mod*compute%mod)%mod) % mod;
        }
        return (int)(ans%mod);
    }
}

Complexité spatiale : O(1)

Rejoignez ma chaîne Telegram pour obtenir toutes les solutions GFG POD.

https://t.me/sole_master_coding

Merci a tous !!!

Bonne année !!!