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

做下载类网站一年赚多少钱中国企业网信息网

做下载类网站一年赚多少钱,中国企业网信息网,建筑业资质证书查询网,莱芜要出大事本文涉及知识点 状态压缩 容斥原理 组合数学 二分查找算法合集 LeetCode100267. 单面值组合的第 K 小金额 给你一个整数数组 coins 表示不同面额的硬币#xff0c;另给你一个整数 k 。 你有无限量的每种面额的硬币。但是#xff0c;你 不能 组合使用不同面额的硬币。 返回…本文涉及知识点 状态压缩 容斥原理 组合数学 二分查找算法合集 LeetCode100267. 单面值组合的第 K 小金额 给你一个整数数组 coins 表示不同面额的硬币另给你一个整数 k 。 你有无限量的每种面额的硬币。但是你 不能 组合使用不同面额的硬币。 返回使用这些硬币能制造的 第 kth 小 金额。 示例 1 输入 coins [3,6,9], k 3 输出 9 解释给定的硬币可以制造以下金额 3元硬币产生3的倍数3, 6, 9, 12, 15等。 6元硬币产生6的倍数6, 12, 18, 24等。 9元硬币产生9的倍数9, 18, 27, 36等。 所有硬币合起来可以产生3, 6, 9, 12, 15等。 示例 2 输入coins [5,2], k 7 输出12 解释给定的硬币可以制造以下金额 5元硬币产生5的倍数5, 10, 15, 20等。 2元硬币产生2的倍数2, 4, 6, 8, 10, 12等。 所有硬币合起来可以产生2, 4, 5, 6, 8, 10, 12, 14, 15等。 提示 1 coins.length 15 1 coins[i] 25 1 k 2 * 109 coins 包含两两不同的整数。 容斥原理小于等于mid的金额数量 如果不考虑重复 ∑ i : n − 1 m i d / c o i n s [ i ] \sum_{i:}^{n-1}mid/coins[i] ∑i:n−1​mid/coins[i] 考虑重复则很复杂。 以mid 12为例子f(x) 表示用面值x的金币能过组成小于等于mid的金额数量 a , coins {2,3} 面值2的倍数2,4,6,8,10,12 f(2)6其中重复2个。 面值3的倍数3,6,9,12 f(3) 4 ,重复2个。 总数量f(2)f(3)-f(6) 6-4-28。6是最小公倍数LCM bcoins {2,3,5} 面值5的倍数5,10 2 ,其中重复一个。 新增加的数 f(5) - f(LCM(5,2))-f(LCM(3,5)) 如果一个数 同时10和15的倍数则减重复了要加回来 及 f(5) - f(LCM(5,2))-f(LCM(3,5)) f(LCM(2,3,5)) 注意 C有系统函数 lcm 二分 令 cnt(mid) 是小于等于mid的金额数。如果cnt(mid) k则mid一定不是解。我们要求第个一 cnt(mid)k 。 故用左开右闭空间。 单调性证明 mid1 mid2 如果cnt(mid1)k 成立则cnt(mid2)k 成立 因为(mid1,mid2]中的数要么让返回值1要么让返回值不变。同理 cnt(mid2)k 不成立则cnt(mid1)k也不成立。 代码 核心代码 class Solution { public:long long findKthSmallest(vectorint coins, int k) {m_coins coins; long long left 0, right 1000000000000LL;while (right - left 1) {const auto mid left (right - left) / 2;if (Count(mid) k) {right mid;}else{left mid;}}return right;}long long Count(long long mid) {vectorvectorlong long vMask; long long llRet 0;for (const auto n : m_coins) {vectorvectorlong long vMask2;for (const auto v : vMask) {vectorlong long v2;for (const auto llMask : v) {const long long tmp lcm(llMask, n);if (tmp mid) {v2.emplace_back(tmp);} }vMask2.emplace_back(v2);}vMask2.emplace_back();vMask2.back().emplace_back(n);for (int i 1; i vMask2.size(); i) {vMask2[i].insert(vMask2[i].end(), vMask[i - 1].begin(), vMask[i - 1].end());} vMask2.swap(vMask);}for (int i 0; i vMask.size(); i) {for (const auto iMask : vMask[vMask.size() - 1 - i]) {llRet (1 i) ? -mid / iMask : mid / iMask;}}return llRet;}vectorint m_coins; };测试用例 int main() {vectorint nums { 3,6,9 };int k;{Solution sln;nums { 2,3,5,7,11,13,17,19,23,25,20,18 }, k 1000000000;auto res sln.findKthSmallest(nums, k);Assert(9LL, res);}{Solution sln;nums { 3,6,9 }, k 3;auto res sln.findKthSmallest(nums, k);Assert(9LL, res);}}用状态压缩优化代码量通过前置状态计算后置状态) class Solution { public:long long findKthSmallest(vectorint coins, int k) { const int iMaskCount 1 coins.size();vectorint v01(iMaskCount),vLCM(iMaskCount,-1);vectorint vMask[2];//vMask[0] 记录 偶数个数的最小公倍数vMask[1]记录奇数个数的最小公倍数v01[0] 0;vLCM[0] 1;for (int iMask 0; iMask iMaskCount; iMask) {for (int j 0; j coins.size(); j) {if (!((1 j) iMask)) {const int iNewMask (1 j) | iMask;if (-1 ! vLCM[iNewMask]) { continue; }v01[iNewMask] v01[iMask] ^ 1;vLCM[iNewMask] lcm(vLCM[iMask], coins[j]);vMask[v01[iNewMask]].emplace_back(vLCM[iNewMask]); }}}long long left 0, right 1000000000000LL;while (right - left 1) {const auto mid left (right - left) / 2;long long cnt 0;for (const auto ll : vMask[0]) {cnt - mid / ll;}for (const auto ll : vMask[1]) {cnt mid / ll;}if (cnt k) {right mid;}else{left mid;}}return right;} };用状态压缩优化代码量计算后置状态) class Solution { public:long long findKthSmallest(vectorint coins, int k) { const int iMaskCount 1 coins.size(); vectorlong long vMask[2];//vMask[0] 记录 偶数个数的最小公倍数vMask[1]记录奇数个数的最小公倍数vectorlong long v01(iMaskCount), vLCM(iMaskCount, -1);{ v01[0] 0;vLCM[0] 1;for (int i 0; i coins.size(); i) {vLCM[1 i] coins[i];}for (int iNewMask 1; iNewMask iMaskCount; iNewMask) {const int iMask (iNewMask - 1) iNewMask;v01[iNewMask] v01[iMask] ^ 1;vLCM[iNewMask] lcm(vLCM[iMask], vLCM[iNewMask - iMask]);vMask[v01[iNewMask]].emplace_back(vLCM[iNewMask]);}}long long left 0, right 1000000000000LL;while (right - left 1) {const auto mid left (right - left) / 2;long long cnt 0;for (const auto ll : vMask[0]) {cnt - mid / ll;}for (const auto ll : vMask[1]) {cnt mid / ll;}if (cnt k) {right mid;}else{left mid;}}return right;} };扩展阅读 视频课程 有效学习明确的目标 及时的反馈 拉伸区难度合适可以先学简单的课程请移步CSDN学院听白银讲师也就是鄙人的讲解。 https://edu.csdn.net/course/detail/38771 如何你想快速形成战斗了为老板分忧请学习C#入职培训、C入职培训等课程 https://edu.csdn.net/lecturer/6176 相关下载 想高屋建瓴的学习算法请下载《喜缺全书算法册》doc版 https://download.csdn.net/download/he_zhidan/88348653 我想对大家说的话闻缺陷则喜是一个美好的愿望早发现问题早修改问题给老板节约钱。子墨子言之事无终始无务多业。也就是我们常说的专业的人做专业的事。如果程序是一条龙那算法就是他的是睛 测试环境 操作系统win7 开发环境 VS2019 C17 或者 操作系统win10 开发环境 VS2022 C17 如无特殊说明本算法用**C**实现。
文章转载自:
http://www.morning.rpjyl.cn.gov.cn.rpjyl.cn
http://www.morning.liyixun.com.gov.cn.liyixun.com
http://www.morning.hfyll.cn.gov.cn.hfyll.cn
http://www.morning.rkqqf.cn.gov.cn.rkqqf.cn
http://www.morning.ksqzd.cn.gov.cn.ksqzd.cn
http://www.morning.yntsr.cn.gov.cn.yntsr.cn
http://www.morning.cwznh.cn.gov.cn.cwznh.cn
http://www.morning.jykzy.cn.gov.cn.jykzy.cn
http://www.morning.tbjtp.cn.gov.cn.tbjtp.cn
http://www.morning.hnkkf.cn.gov.cn.hnkkf.cn
http://www.morning.shsh1688.com.gov.cn.shsh1688.com
http://www.morning.hrzky.cn.gov.cn.hrzky.cn
http://www.morning.wpqcj.cn.gov.cn.wpqcj.cn
http://www.morning.nsncq.cn.gov.cn.nsncq.cn
http://www.morning.cxtbh.cn.gov.cn.cxtbh.cn
http://www.morning.zdqsc.cn.gov.cn.zdqsc.cn
http://www.morning.bmgdl.cn.gov.cn.bmgdl.cn
http://www.morning.rmtxp.cn.gov.cn.rmtxp.cn
http://www.morning.txlxr.cn.gov.cn.txlxr.cn
http://www.morning.rfzbm.cn.gov.cn.rfzbm.cn
http://www.morning.gqjqf.cn.gov.cn.gqjqf.cn
http://www.morning.rswtz.cn.gov.cn.rswtz.cn
http://www.morning.qgjxt.cn.gov.cn.qgjxt.cn
http://www.morning.kxnjg.cn.gov.cn.kxnjg.cn
http://www.morning.rwjfs.cn.gov.cn.rwjfs.cn
http://www.morning.rfwrn.cn.gov.cn.rfwrn.cn
http://www.morning.qqklk.cn.gov.cn.qqklk.cn
http://www.morning.ydnxm.cn.gov.cn.ydnxm.cn
http://www.morning.ypbdr.cn.gov.cn.ypbdr.cn
http://www.morning.rjfr.cn.gov.cn.rjfr.cn
http://www.morning.pphbn.cn.gov.cn.pphbn.cn
http://www.morning.rwrn.cn.gov.cn.rwrn.cn
http://www.morning.ylyzk.cn.gov.cn.ylyzk.cn
http://www.morning.fwmln.cn.gov.cn.fwmln.cn
http://www.morning.lyhry.cn.gov.cn.lyhry.cn
http://www.morning.gkfwp.cn.gov.cn.gkfwp.cn
http://www.morning.mjzcp.cn.gov.cn.mjzcp.cn
http://www.morning.nrzkg.cn.gov.cn.nrzkg.cn
http://www.morning.kndt.cn.gov.cn.kndt.cn
http://www.morning.phlrp.cn.gov.cn.phlrp.cn
http://www.morning.lsjgh.cn.gov.cn.lsjgh.cn
http://www.morning.wlggr.cn.gov.cn.wlggr.cn
http://www.morning.clzly.cn.gov.cn.clzly.cn
http://www.morning.kpgms.cn.gov.cn.kpgms.cn
http://www.morning.lsmnn.cn.gov.cn.lsmnn.cn
http://www.morning.yzfrh.cn.gov.cn.yzfrh.cn
http://www.morning.pxdgy.cn.gov.cn.pxdgy.cn
http://www.morning.qzpkr.cn.gov.cn.qzpkr.cn
http://www.morning.pqkgb.cn.gov.cn.pqkgb.cn
http://www.morning.zlzpz.cn.gov.cn.zlzpz.cn
http://www.morning.sjpbh.cn.gov.cn.sjpbh.cn
http://www.morning.ygkq.cn.gov.cn.ygkq.cn
http://www.morning.bphqd.cn.gov.cn.bphqd.cn
http://www.morning.zbmcz.cn.gov.cn.zbmcz.cn
http://www.morning.lxfdh.cn.gov.cn.lxfdh.cn
http://www.morning.sxlrg.cn.gov.cn.sxlrg.cn
http://www.morning.fypgl.cn.gov.cn.fypgl.cn
http://www.morning.pkpqh.cn.gov.cn.pkpqh.cn
http://www.morning.qmtzq.cn.gov.cn.qmtzq.cn
http://www.morning.wmmjw.cn.gov.cn.wmmjw.cn
http://www.morning.rcrnw.cn.gov.cn.rcrnw.cn
http://www.morning.snzgg.cn.gov.cn.snzgg.cn
http://www.morning.fzwf.cn.gov.cn.fzwf.cn
http://www.morning.srckl.cn.gov.cn.srckl.cn
http://www.morning.rfwkn.cn.gov.cn.rfwkn.cn
http://www.morning.zbkwj.cn.gov.cn.zbkwj.cn
http://www.morning.djgrg.cn.gov.cn.djgrg.cn
http://www.morning.ljbpk.cn.gov.cn.ljbpk.cn
http://www.morning.jbqwb.cn.gov.cn.jbqwb.cn
http://www.morning.xnymt.cn.gov.cn.xnymt.cn
http://www.morning.qsdnt.cn.gov.cn.qsdnt.cn
http://www.morning.yxkyl.cn.gov.cn.yxkyl.cn
http://www.morning.dgpxp.cn.gov.cn.dgpxp.cn
http://www.morning.jtdrz.cn.gov.cn.jtdrz.cn
http://www.morning.pbygt.cn.gov.cn.pbygt.cn
http://www.morning.wjyyg.cn.gov.cn.wjyyg.cn
http://www.morning.cbchz.cn.gov.cn.cbchz.cn
http://www.morning.mfmrg.cn.gov.cn.mfmrg.cn
http://www.morning.qxnlc.cn.gov.cn.qxnlc.cn
http://www.morning.bpmfn.cn.gov.cn.bpmfn.cn
http://www.tj-hxxt.cn/news/235119.html

相关文章:

  • 网站关键词过多廊坊手机网站建设
  • 怎样做外贸网站wordpress邮件发布出去
  • 简要列举网站常见类型网络正能量你懂我意思的
  • 360免费建站域名制作网制作网站建设的公司
  • 怎么开发个人网站wordpress 主题包
  • 网站右边悬浮代码怎么查看一个网站是不是伪静态
  • 网站服务器搭建教程wordpress企业插件
  • wordpress网站访问量网页前端是什么
  • 网络电话聊天网站建设多少钱口碑营销论文
  • 手机 网站编辑器wordpress 会员分值
  • 开一个网站需要多少钱沧州省建设厅网站
  • 湖北建设厅考试网站想学室内设计在哪里学比较好
  • 织梦网站模板免费下载懂的建设网站
  • 江苏省建设工程竣工备案网站服装官网网站建设
  • 知名的咨询行业网站制作企业如何做网站收款
  • 如何在建设银行网站查企业年金建筑网站 法人签字
  • 建设网站东莞用seo对网站做分析
  • 网站注册域名wordpress建地方门户
  • 怎么查网站域名wordpress前端主题
  • 报名网站如何做网站建设创意广告
  • 黑河做网站的公司郑州哪里有做网站的
  • 如何修改上线网站高德街景地图全景下载
  • 吴江做网站公司社交做的最好的网站
  • 网站代码加密了怎么做页面设计的重要性
  • html成品网站做网站费用需要分摊吗
  • 学而思最早是做网站的吗seo营销论文
  • 家里公网宽带做网站要备案么wordpress万网
  • 网站建设 项目背景昆明做网站公
  • 怎么制作网站准考证在网上打印竞价账户托管公司哪家好
  • 自建网站免费教程asp网站源码使用