diff --git a/solution/2900-2999/2992.Number of Self-Divisible Permutations/README.md b/solution/2900-2999/2992.Number of Self-Divisible Permutations/README.md index b87df04d77b9d..090330271c14b 100644 --- a/solution/2900-2999/2992.Number of Self-Divisible Permutations/README.md +++ b/solution/2900-2999/2992.Number of Self-Divisible Permutations/README.md @@ -108,7 +108,7 @@ class Solution: return 1 ans = 0 for j in range(1, n + 1): - if (mask >> j & 1) == 0 and (i % j == 0 or j % i == 0): + if (mask >> j & 1) == 0 and gcd(i, j) == 1: ans += dfs(mask | 1 << j) return ans @@ -267,7 +267,7 @@ class Solution: for mask in range(1 << n): i = mask.bit_count() for j in range(1, n + 1): - if (mask >> (j - 1) & 1) == 1 and (i % j == 0 or j % i == 0): + if (mask >> (j - 1) & 1) == 1 and gcd(i, j) == 1: f[mask] += f[mask ^ (1 << (j - 1))] return f[-1] ``` diff --git a/solution/2900-2999/2992.Number of Self-Divisible Permutations/README_EN.md b/solution/2900-2999/2992.Number of Self-Divisible Permutations/README_EN.md index 1f3deec3b736b..af43770463888 100644 --- a/solution/2900-2999/2992.Number of Self-Divisible Permutations/README_EN.md +++ b/solution/2900-2999/2992.Number of Self-Divisible Permutations/README_EN.md @@ -106,7 +106,7 @@ class Solution: return 1 ans = 0 for j in range(1, n + 1): - if (mask >> j & 1) == 0 and (i % j == 0 or j % i == 0): + if (mask >> j & 1) == 0 and gcd(i, j) == 1: ans += dfs(mask | 1 << j) return ans @@ -265,7 +265,7 @@ class Solution: for mask in range(1 << n): i = mask.bit_count() for j in range(1, n + 1): - if (mask >> (j - 1) & 1) == 1 and (i % j == 0 or j % i == 0): + if (mask >> (j - 1) & 1) == 1 and gcd(i, j) == 1: f[mask] += f[mask ^ (1 << (j - 1))] return f[-1] ``` diff --git a/solution/2900-2999/2992.Number of Self-Divisible Permutations/Solution.py b/solution/2900-2999/2992.Number of Self-Divisible Permutations/Solution.py index 87d935310af7a..af1bd23efac64 100644 --- a/solution/2900-2999/2992.Number of Self-Divisible Permutations/Solution.py +++ b/solution/2900-2999/2992.Number of Self-Divisible Permutations/Solution.py @@ -7,7 +7,7 @@ def dfs(mask: int) -> int: return 1 ans = 0 for j in range(1, n + 1): - if (mask >> j & 1) == 0 and (i % j == 0 or j % i == 0): + if (mask >> j & 1) == 0 and gcd(i, j) == 1: ans += dfs(mask | 1 << j) return ans diff --git a/solution/2900-2999/2992.Number of Self-Divisible Permutations/Solution2.py b/solution/2900-2999/2992.Number of Self-Divisible Permutations/Solution2.py index f5cebb609016f..98b2d1caf552d 100644 --- a/solution/2900-2999/2992.Number of Self-Divisible Permutations/Solution2.py +++ b/solution/2900-2999/2992.Number of Self-Divisible Permutations/Solution2.py @@ -5,6 +5,6 @@ def selfDivisiblePermutationCount(self, n: int) -> int: for mask in range(1 << n): i = mask.bit_count() for j in range(1, n + 1): - if (mask >> (j - 1) & 1) == 1 and (i % j == 0 or j % i == 0): + if (mask >> (j - 1) & 1) == 1 and gcd(i, j) == 1: f[mask] += f[mask ^ (1 << (j - 1))] return f[-1]