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

福州企业网站html模板网站模板下载

福州企业网站,html模板网站模板下载,wordpress常用插件,网页设计师是前端吗作者推荐 【动态规划】【前缀和】【C算法】LCP 57. 打地鼠 本文涉及知识点 动态规划汇总 LeetCode2188. 完成比赛的最少时间 给你一个下标从 0 开始的二维整数数组 tires #xff0c;其中 tires[i] [fi, ri] 表示第 i 种轮胎如果连续使用#xff0c;第 x 圈需要耗时 fi…作者推荐 【动态规划】【前缀和】【C算法】LCP 57. 打地鼠 本文涉及知识点 动态规划汇总 LeetCode2188. 完成比赛的最少时间 给你一个下标从 0 开始的二维整数数组 tires 其中 tires[i] [fi, ri] 表示第 i 种轮胎如果连续使用第 x 圈需要耗时 fi * ri(x-1) 秒。 比方说如果 fi 3 且 ri 2 且一直使用这种类型的同一条轮胎那么该轮胎完成第 1 圈赛道耗时 3 秒完成第 2 圈耗时 3 * 2 6 秒完成第 3 圈耗时 3 * 22 12 秒依次类推。 同时给你一个整数 changeTime 和一个整数 numLaps 。 比赛总共包含 numLaps 圈你可以选择 任意 一种轮胎开始比赛。每一种轮胎都有 无数条 。每一圈后你可以选择耗费 changeTime 秒 换成 任意一种轮胎也可以换成当前种类的新轮胎。 请你返回完成比赛需要耗费的 最少 时间。 示例 1 输入tires [[2,3],[3,4]], changeTime 5, numLaps 4 输出21 解释 第 1 圈使用轮胎 0 耗时 2 秒。 第 2 圈继续使用轮胎 0 耗时 2 * 3 6 秒。 第 3 圈耗费 5 秒换一条新的轮胎 0 然后耗时 2 秒完成这一圈。 第 4 圈继续使用轮胎 0 耗时 2 * 3 6 秒。 总耗时 2 6 5 2 6 21 秒。 完成比赛的最少时间为 21 秒。 示例 2 输入tires [[1,10],[2,2],[3,4]], changeTime 6, numLaps 5 输出25 解释 第 1 圈使用轮胎 1 耗时 2 秒。 第 2 圈继续使用轮胎 1 耗时 2 * 2 4 秒。 第 3 圈耗时 6 秒换一条新的轮胎 1 然后耗时 2 秒完成这一圈。 第 4 圈继续使用轮胎 1 耗时 2 * 2 4 秒。 第 5 圈耗时 6 秒换成轮胎 0 然后耗时 1 秒完成这一圈。 总耗时 2 4 6 2 4 6 1 25 秒。 完成比赛的最少时间为 25 秒。 提示 1 tires.length 105 tires[i].length 2 1 fi, changeTime 105 2 ri 105 1 numLaps 1000 动态规划 ri大于2就算fi为1。20圈后用时就大于等于10^6不如换新轮胎只跑一圈。 一个轮胎跑i圈只需要考虑用时最短的那种轮胎。 轮胎圈数只需要考虑不到20种状态。 动态规划的状态表示 dp[j] 使用前i1种状态需要的最少时间包括换轮胎的时间。 时间复杂度O(numLaps 20) 动态规划的转移方程 dp[ji] min(,dp[j]useTime) 动态规划的初始值 dp[0] 0其它1e9。 动态规划的填表顺序 依次处理不到20种状态。 动态规划的返回值 dp.back()-changeTime 代码 核心代码 templateclass ELE,class ELE2 void MinSelf(ELE* seft, const ELE2 other) {*seft min(*seft,(ELE) other); }templateclass ELE void MaxSelf(ELE* seft, const ELE other) {*seft max(*seft, other); }class Solution { public:int minimumFinishTime(vectorvectorint tires, int changeTime, int numLaps) { vectorlong long vCurTireTime;for (const auto v : tires){ vCurTireTime.emplace_back(v[0]);}auto vTotalTireTime vCurTireTime;vectorlong long useTime { 0,*std::min_element(vCurTireTime.begin(),vCurTireTime.end()) };for(int q 2; q numLaps ;q ){for (int i 0 ; i vCurTireTime.size();i ){vCurTireTime[i] * tires[i][1];MinSelf(vCurTireTime[i], m_llNotMay);vTotalTireTime[i] vCurTireTime[i];MinSelf(vTotalTireTime[i], m_llNotMay);}const long long llMin *std::min_element(vTotalTireTime.begin(), vTotalTireTime.end());if (llMin (useTime[1] changeTime) * q){break;}useTime.emplace_back(llMin);}vectorlong long dp(numLaps 1, m_llNotMay);dp[0] 0;for (int i 1; i useTime.size(); i){for (int pre 0; pre dp.size(); pre){const int cur pre i;if (cur dp.size()){MinSelf(dp[cur], dp[pre] useTime[i] changeTime);}}}return (int)(dp.back()-changeTime);}const long long m_llNotMay 2e9; };测试用例 templateclass T void Assert(const T t1, const T t2) {assert(t1 t2); }templateclass T void Assert(const vectorT v1, const vectorT v2) {if (v1.size() ! v2.size()){assert(false);return;}for (int i 0; i v1.size(); i){Assert(v1[i], v2[i]);}}int main() { vectorvectorint tires;int changeTime, numLaps;{Solution sln;tires { {2,3},{3,4} }, changeTime 5, numLaps 4;auto res sln.minimumFinishTime(tires, changeTime, numLaps);Assert(res,21);}{Solution sln;tires { {1,10},{2,2},{3,4} }, changeTime 6, numLaps 5;auto res sln.minimumFinishTime(tires, changeTime, numLaps);Assert(res, 25);}{Solution sln;tires { {100000, 2}, { 10000,10000 }, { 1,2 }, { 1,10000 } }, changeTime 10000, numLaps 1000;auto res sln.minimumFinishTime(tires, changeTime, numLaps);Assert(res, 1085253);}{Solution sln;tires { {100000,2},{10000,10000},{1,2},{1,10000} }, changeTime 1, numLaps 1;auto res sln.minimumFinishTime(tires, changeTime, numLaps);Assert(res, 1);}}2023年2月 class Solution { public: int minimumFinishTime(vectorvector tires, int changeTime, int numLaps) { m_vNumLapUseMinTime.resize(20, m_iNotMay); for (const auto v : tires) { long long iNeedTime v[0]; int iPre 0; for (int j 0; j 20; j) { if (0 ! j) { iNeedTime iNeedTime*((long long)v[1]); } if (iNeedTime m_vNumLapUseMinTime[0] changeTime) { break; } iPre iNeedTime; m_vNumLapUseMinTime[j] min(m_vNumLapUseMinTime[j], (int)iPre); } } int iVilidNum 0; for (const auto i : m_vNumLapUseMinTime) { if (m_iNotMay ! i) { iVilidNum; } } vector dp(numLaps 1, m_iNotMay); dp[0] 0; for (int preNumLaps 0; preNumLaps numLaps; preNumLaps) { for (int j 0; j iVilidNum; j) { const int iNewNumLaps preNumLaps j 1; if (iNewNumLaps numLaps) { continue; } dp[iNewNumLaps] min(dp[iNewNumLaps], dp[preNumLaps] m_vNumLapUseMinTime[j] changeTime); } } return dp[numLaps] - changeTime; } vector m_vNumLapUseMinTime; const int m_iNotMay 1000 * 1000 * 1000; }; 扩展阅读 视频课程 有效学习明确的目标 及时的反馈 拉伸区难度合适可以先学简单的课程请移步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.zqtcl.cn/news/435029/

相关文章:

  • 湛江自做网站城乡住建局官网
  • 广东网站建设找自己做网站还有出路吗
  • wordpress后台管理地址更改班级优化大师怎么用
  • 电脑网站开发学习产品怎么做市场推广
  • 上海市网站建设公叿目前流行的app网站开发模式
  • 企业手机网站建设效果wordpress栏目链接地址
  • 产品经理做网站网络公司名字免费起名大全
  • 做得比较好的公司网站kol营销
  • 百度指数分析平台长春seo优化企业网络跃升
  • 如何免费做网站域名wordpress 赚钱
  • 苏州市住房建设局网站首页温州网站设计公司
  • 网站模板哪个好用汕头建设工程总公司
  • iis网站重定向软件开发培训机构排名
  • 浙江大学教室办事大厅网站建设网页棋牌搭建
  • 长沙市天心区建设局网站新河网站
  • 网站改版 升级的目的嘉兴海盐县城乡建设局网站
  • 网站建设一年多少钱上海工程建设交易信息网站
  • 网站推广到底应该怎么做中国建设银行网上登录入口
  • 东莞网站建设服务商wordpress页面样式
  • 亿星网站建设创业网站怎么做
  • 绿韵建设有限公司网站重庆景点分布图
  • 咨询类网站模板wordpress怎样切换语言
  • 大连网站建设与维护题库网站建设目标是
  • 威海网站开发询广西南宁网站运营
  • 网站的素材做logo长沙专业的网站建设企业
  • 网站显示速度的代码是什么情况专门做中式服装平台的网站
  • 驻马店做网站的公司大连网站模板建站
  • aso如何优化网站优化分析软件
  • IT周末做网站违反制度么wordpress 图床 插件
  • 成都网站建设scjsc888因网站建设关闭的公告