From 8732acba519ef37c92839b44493079daf33d2c93 Mon Sep 17 00:00:00 2001 From: chayan das <110921638+Chayandas07@users.noreply.github.com> Date: Thu, 23 May 2024 16:41:46 +0530 Subject: [PATCH] Create 2597. The Number of Beautiful Subsets --- 2597. The Number of Beautiful Subsets | 29 +++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 2597. The Number of Beautiful Subsets diff --git a/2597. The Number of Beautiful Subsets b/2597. The Number of Beautiful Subsets new file mode 100644 index 0000000..fc187e9 --- /dev/null +++ b/2597. The Number of Beautiful Subsets @@ -0,0 +1,29 @@ +class Solution { +public: + int ans; + unordered_map rec; + int beautifulSubsets(vector& nums, int k) { + sort(nums.begin(), nums.end()); + ans = 0; + vector tmp; + int n = nums.size(); + for (int i = 0; i < n; ++i) { + rec[nums[i]]++; + recursion(i+1, n, tmp, nums, k); + rec[nums[i]]--; + } + return ans; + } + void recursion(int pos, int n, vector &tmp, vector& nums, int k) { + if (pos == n) { + ans++; + return; + } + if (rec[nums[pos] - k] == 0) { + rec[nums[pos]]++; + recursion(pos + 1, n, tmp, nums, k); + rec[nums[pos]]--; + } + recursion(pos + 1, n, tmp, nums, k); + } +};