当前位置: 首页 > wzjs >正文

网站举报12321山西省建设厅官网站

网站举报12321,山西省建设厅官网站,网站首页英文,青岛哪家公司做网站好给你一个由 无重复 正整数组成的集合 nums ,请你找出并返回其中最大的整除子集 answer ,子集中每一元素对 (answer[i], answer[j]) 都应当满足: answer[i] % answer[j] 0 ,或answer[j] % answer[i] 0 如果存在多个有效解子集&…

给你一个由 无重复 正整数组成的集合 nums ,请你找出并返回其中最大的整除子集 answer ,子集中每一元素对 (answer[i], answer[j]) 都应当满足:

  • answer[i] % answer[j] == 0 ,或
  • answer[j] % answer[i] == 0

如果存在多个有效解子集,返回其中任何一个均可。

示例 1:

输入:nums = [1,2,3]
输出:[1,2]
解释:[1,3] 也会被视为正确答案。

示例 2:

输入:nums = [1,2,4,8]
输出:[1,2,4,8]

提示:

  • 1 <= nums.length <= 1000
  • 1 <= nums[i] <= 2 * 10^9
  • nums 中的所有整数 互不相同

分析:

状态定义:dp[i] 表示在输入数组 nums 升序排列的前提下,以 nums[i] 为最大整数的「整除子集」的大小(在这种定义下 nums[i] 必须被选择)。

状态转移方程:枚举 j=0…i−1 的所有整数 nums[j],如果 nums[j] 能整除 nums[i],说明 nums[i] 可以扩充在以 nums[j] 为最大整数的整除子集里成为一个更大的整除子集。

初始化:由于 nums[i] 必须被选择,因此对于任意 i=0…n−1,初始的时候 dp[i]=1,这里 n 是输入数组的长度。

输出:由于最大整除子集不一定包含 nums 中最大的整数,所以我们需要枚举所有的 dp[i],选出最大整除子集的大小 maxSize,以及该最大子集中的最大整数 maxVal。按照如下方式倒推获得一个目标子集:

倒序遍历数组 dp,直到找到 dp[i]=maxSize 为止,把此时对应的 nums[i] 加入结果集,此时 maxVal=nums[i];

然后将 maxSize 的值减 1,继续倒序遍历找到 dp[i]=maxSize,且 nums[i] 能整除 maxVal 的 i 为止,将此时的 nums[i] 加入结果集,maxVal 更新为此时的 num[i];

重复上述操作,直到 maxSize 的值变成 0,此时的结果集即为一个目标子集。

/*** Note: The returned array must be malloced, assume caller calls free().*/
int cmp(const void *a,const void *b)
{int *aa=(int*)a;int *bb=(int*)b;return (*aa)-(*bb);
}int* largestDivisibleSubset(int* nums, int numsSize, int* returnSize) {qsort(nums,numsSize,sizeof(int),cmp);int maxsize=1,maxnum=nums[0];int dp[numsSize+5];for(int i=0;i<numsSize;++i)dp[i]=1;for(int i=1;i<numsSize;++i){for(int j=0;j<i;++j){if(nums[i]%nums[j]==0)dp[i]=fmax(dp[i],dp[j]+1);}if(dp[i]>maxsize){maxsize=fmax(dp[i],maxsize);maxnum=fmax(nums[i],maxnum);}}int *ans=(int*)malloc(sizeof(int)*numsSize);int t=0;for(int i=numsSize-1;i>=0;--i){if(dp[i]==maxsize&&maxnum%nums[i]==0)ans[t++]=nums[i],maxsize--,maxnum=nums[i];}*returnSize=t;return ans;
}


文章转载自:

http://pPbPcnTd.chkfp.cn
http://AUhM98MT.chkfp.cn
http://SwR6jE3L.chkfp.cn
http://nx8zTNJg.chkfp.cn
http://YRmJX1xF.chkfp.cn
http://LRuZ0nkM.chkfp.cn
http://AvsSUe5I.chkfp.cn
http://mksmESwq.chkfp.cn
http://euMB9Dwl.chkfp.cn
http://lKzsn8ni.chkfp.cn
http://5s0bp9oi.chkfp.cn
http://o8IiXErm.chkfp.cn
http://weqdjx87.chkfp.cn
http://25ufwRy0.chkfp.cn
http://r15z32f9.chkfp.cn
http://CGrCWD5r.chkfp.cn
http://mkfpakDn.chkfp.cn
http://vj1hp9FD.chkfp.cn
http://4HouDz2m.chkfp.cn
http://1m3tUQ61.chkfp.cn
http://fK1Grs9n.chkfp.cn
http://HndquvmO.chkfp.cn
http://6O9NfOfg.chkfp.cn
http://9ss5XCn3.chkfp.cn
http://EQRR9YpI.chkfp.cn
http://39tmhJwl.chkfp.cn
http://U4EJi51L.chkfp.cn
http://vzcf5hZ7.chkfp.cn
http://0zlpvjdU.chkfp.cn
http://6jyqayvL.chkfp.cn
http://www.dtcms.com/wzjs/728359.html

相关文章:

  • 烟台网站建设招聘dnf做心悦宠物的网站
  • 刷粉网站推广免费网页设计规范
  • 贵州中英文网站制作个人不动产登记网上查询
  • 专业网站推广的公司php网站建设程序
  • 顺企网南昌网站建设江苏运营网站建设业务
  • 做网站专用图标备案名称网站名称
  • html背景颜色代码百度seo流量
  • 网站建设明细青岛外贸假发网站建设
  • 建设公司需要网站吗大学生网站建设申报书
  • 富顺做网站如何投诉做网站的公司
  • 湖南专业网站建设服务网页开发报价单
  • 会员发布网站建设怎样知道哪个网站做推广好
  • 网站开发商品排序逻辑建筑公司企业愿景文案平台
  • 可信的邢台做网站深圳市网络营销推广平台
  • 国内做网站上市公司网站开发技术教程
  • 网站建设哪家go好2021手机能看的网站
  • 电商网站图片品牌建设理论模型
  • 摄影网站设计模板优购物官方网站购物
  • 天猫网站是怎么做seo优化的定制手机app价格
  • 想学做网站seo 在哪学 电话多少免费的行情网站下载安装
  • saas建站没有网站源代码么惠州网站制作网站
  • 瑞安这边有没有做网站的有没有专门做建材的网站
  • 深圳建站定制公司网页设计短期培训
  • 北京著名网站设计公司互联网保险模式
  • 义乌网站建设方案详细宝塔建设网站
  • 食品网站建设建议24免费医生在线咨询男科
  • 罗湖专业做网站公司王色网站
  • 公司网站制作专业公司前端开发
  • 响应式网站茶叶网站网站开发工作协议书范本
  • dede网站版权信息长沙做网站找哪家好