WordPress科技网站网站建设定位分析论文
2026/2/10 17:19:27 网站建设 项目流程
WordPress科技网站,网站建设定位分析论文,做h5网站pc加手机版要多少钱,网站一个页面多少钱Problem: 805. Split Array With Same Average 数组的均值分割 解题过程 深度优先搜索#xff0c;回溯#xff0c;只需要考虑一个数组即可#xff0c;若avg 1.5, 数组长度11 则 11x1.4 3 x 1.5 8 * 1.5#xff0c;所以只需要考虑一个数组#xff0c;拿到平均值#xf…Problem: 805. Split Array With Same Average 数组的均值分割解题过程深度优先搜索回溯只需要考虑一个数组即可若avg 1.5, 数组长度11 则 11x1.4 3 x 1.5 8 * 1.5所以只需要考虑一个数组拿到平均值然后avg * i若是整数则证明可行的拿到最大的i索引然后dfs若已经找到或者个数mx最大的索引i返回若哈希表中有这个项则返回同一步需要去重的否则会超时也就是递归的同一层不能是同一个数字也就是pre!nums[i]Codeclass Solution { public: unordered_mapint, double ump; bool flag false; int mx; bool status[10002]; void dfs(vectorint nums, int index, int steps, double sum) { if(flag true || steps mx) return; if(steps nums.size() ump.find(steps)!ump.end() ump[steps]-sum 0.0) { flag true; return; } int pre -1; for(int i index; i nums.size(); i) { if(nums[i] pre) continue; dfs(nums, i 1, steps 1, sum nums[i]); pre nums[i]; } } bool splitArraySameAverage(vectorint nums) { int sum 0; sort(nums.begin(), nums.end()); for(int i : nums) sum i; memset(status, 0, sizeof(status)); double avg sum / (double) nums.size(), tmp; for(int i 1; i nums.size() - 1; i) { tmp avg * (double)i; if(tmp - (int)tmp 1e-10) { mx i; ump[i] (double)(int)tmp; } } if(ump.size() 0) return false; dfs(nums, 0, 0, 0.0); return flag; } };

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询