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

独立网站做seo优化如何推广自己的店铺

独立网站做seo优化,如何推广自己的店铺,wordpress以前版本,wordpress 置顶标签1. 题目链接 LeetCode 495. 提莫攻击 2. 题目描述 在《英雄联盟》中,提莫的攻击会使得敌人进入中毒状态。给定一个非递减的时间序列 timeSeries 和中毒持续时间 duration,计算敌人总的中毒时间。 规则: 如果两次攻击的时间间隔小于 durati…
1. 题目链接

LeetCode 495. 提莫攻击


2. 题目描述

在《英雄联盟》中,提莫的攻击会使得敌人进入中毒状态。给定一个非递减的时间序列 timeSeries 和中毒持续时间 duration,计算敌人总的中毒时间。
规则

  • 如果两次攻击的时间间隔小于 duration,中毒时间不会叠加,而是刷新持续时间。
  • 若攻击时间间隔大于等于 duration,中毒时间会完整累加。

示例

  • 输入:timeSeries = [1,4], duration = 2 → 输出:4(中毒时间区间为 [1,3)[4,6))。
  • 输入:timeSeries = [1,2], duration = 2 → 输出:3(中毒时间区间为 [1,3))。

3. 示例分析
  1. 无重叠攻击
    • timeSeries = [1,3,5], duration = 3 → 总时间 3 + 3 + 3 = 9
  2. 完全重叠攻击
    • timeSeries = [1,2,3], duration = 2 → 总时间 2 + 1 + 1 = 4(最后一次攻击后持续 2 秒)。
  3. 混合重叠
    • timeSeries = [1,4,5], duration = 3 → 总时间 3 + 3 + 1 = 7

4. 算法思路

核心思想逆向遍历 + 间隔分析

  1. 逆向遍历
    • 从后向前遍历时间序列,比较相邻两次攻击的时间间隔。
  2. 间隔处理
    • 若间隔 ≥ duration:累加 duration(两次攻击的中毒时间不重叠)。
    • 若间隔 < duration:累加实际间隔时间(中毒时间被刷新)。
  3. 最终累加
    • 最后一次攻击的中毒时间固定为 duration,需单独累加。

5. 边界条件与注意事项
  1. 空数组处理
    • 题目保证 timeSeries 非空,无需处理。
  2. 单次攻击
    • timeSeries.size() == 1,直接返回 duration
  3. 时间间隔为0
    • 若存在重复攻击时间(如 [2,2]),视为完全重叠,仅累加 duration
  4. 大数溢出
    • 时间值可能较大,但算法仅涉及减法运算,无需处理溢出。

6. 代码实现
class Solution {
public:int findPoisonedDuration(vector<int>& timeSeries, int duration) {int n = timeSeries.size();if (n == 1) return duration; // 单次攻击直接返回int ret = 0;while (n >= 2) { // 从后向前遍历int interval = timeSeries[n-1] - timeSeries[n-2];ret += (interval >= duration) ? duration : interval;n--;}ret += duration; // 累加最后一次攻击的持续时间return ret;}
};

在这里插入图片描述


关键代码解析

  1. 逆向遍历逻辑

    while (n >= 2) {int interval = timeSeries[n-1] - timeSeries[n-2];ret += (interval >= duration) ? duration : interval;n--;
    }
    
    • 从倒数第二个元素开始,向前比较相邻时间间隔。
    • 根据间隔与 duration 的关系累加时间。
  2. 最终累加

    ret += duration;
    
    • 最后一次攻击的持续时间固定为 duration,直接累加。

与其他解法的对比

方法时间复杂度空间复杂度核心思想
逆向遍历法O(n)O(1)从后向前处理间隔,避免重复计算
正向遍历法O(n)O(1)从前向后遍历,直接累加最小值
暴力模拟法O(n + T)O(1)模拟每个时间点,T为总时间

总结

逆向遍历法通过从后向前分析时间间隔,以线性时间复杂度和常数空间复杂度高效解决问题。其核心优势在于 避免重复计算重叠时间,直接通过间隔比较确定有效中毒时间。

适用场景

  • 时间序列较长(n ≤ 1e5)。
  • 需要保证代码简洁性和高效性。

关键点

  • 理解时间间隔与 duration 的关系对中毒时间的影响。
  • 处理边界条件时的逻辑简化。
http://www.dtcms.com/wzjs/224212.html

相关文章:

  • 凤翔做网站高级seo招聘
  • 2018网站建设高考成绩查询优化设计官网
  • 生产营销网站开发联系方式如何进行市场推广
  • 海口智能建站模板优化科技
  • 网站建设维护培训河北网站建设案例
  • 投标网站怎么做百度旗下产品
  • 做网站设计用什么软件免费网站搭建
  • 成都市住房和城乡建设局网站优化大师客服
  • 巴南区网站建设班级优化大师官方网站
  • 荔枝视频在线观看高清完整版上海seo公司哪家好
  • 易语言做网站图片下载如何找友情链接
  • 仿糗事百科网站源码dede二次开发分享+评论+互动卢镇seo网站优化排名
  • 怎样制作网站站点百度快照搜索引擎
  • 做网站要了解的事情竞价托管推广多少钱
  • 网站建设商城制作洛阳seo博客
  • 何做好网站建设销售百度seo2022
  • 台湾wordpressseo视频网页入口网站推广
  • 网站建设静态代码产品推广找哪家公司
  • 网站空间购买时选择什么脚本语言网络媒体软文案例
  • 网站优化排名教程关键词密度
  • 做IPv6网站升级的公司有哪些微指数查询
  • 石家庄做网站电话seo群发软件
  • 营销型网站建设的注意事项线上推广引流渠道
  • 大连 做网站东莞seo推广
  • 交易猫钓鱼网站制作教学简短的营销软文范文
  • 小程序建站网站上海互联网公司排名
  • 网页制作与网站建设实战教程视频定西seo排名
  • 建德网站建设德品牌网网站推广平台排行
  • 做网站公司排名电话营销案例最新
  • 网站后台修改不了湖北荆门今日头条