Partition to K Equal Sum Subsets Posted on 2018-10-03 Descriptionhttps://leetcode.com/problems/partition-to-k-equal-sum-subsets/description/ Solution1234567891011121314151617181920212223class Solution {public: bool canPartitionKSubsets(vector<int>& nums, int k) { int sum = 0; for (int i = 0; i < nums.size(); i++) sum += nums[i]; if (sum % k) return false; int target = sum / k; vector<bool> visited(nums.size(), false); return helper(target, nums, visited, k, 0, 0); } bool helper(int target, vector<int>& nums, vector<bool>& visited, int k, int currentSum, int start) { if (k == 0) return true; if (target == currentSum) return helper(target, nums, visited, k - 1, 0, 0); for (int i = start; i < nums.size(); i++) { if (visited[i] == true) continue; visited[i] = true; if ( helper(target, nums, visited, k, currentSum + nums[i], i + 1) ) return true; visited[i] = false; } return false; }};