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

商业网站建设方案企业建站系统

商业网站建设方案,企业建站系统,政府部门网站建设意义,百度上如何做企业网站今日份题目: 给你一个整数数组 arr 和一个整数 difference,请你找出并返回 arr 中最长等差子序列的长度,该子序列中相邻元素之间的差等于 difference 。 子序列 是指在不改变其余元素顺序的情况下,通过删除一些元素或不删除任何…

今日份题目:

给你一个整数数组 arr 和一个整数 difference,请你找出并返回 arr 中最长等差子序列的长度,该子序列中相邻元素之间的差等于 difference

子序列 是指在不改变其余元素顺序的情况下,通过删除一些元素或不删除任何元素而从 arr 派生出来的序列。

示例1

输入:arr = [1,2,3,4], difference = 1
输出:4
解释:最长的等差子序列是 [1,2,3,4]。

示例2

输入:arr = [1,3,5,7], difference = 1
输出:1
解释:最长的等差子序列是任意单个元素。

示例3

输入:arr = [1,5,7,8,5,3,4,2,1], difference = -2
输出:4
解释:最长的等差子序列是 [7,5,3,1]。

提示

  • 1 <= arr.length <= 105

  • -104 <= arr[i], difference <= 104

题目思路

这道题目,我们假设选择当前数据,那么到目前数值为止的最长序列长度应该为这个数值减去difference的那个数记录的长度加一,所以得到状态转移方程:dp[arr[i]]=dp[arr[i]-difference]+1;

注意:由于arr[i]的数据范围有负数,普通的数组不能用来记录有负数的情况,故使用unordered_map记录dp值。

代码

class Solution 
{
public:int longestSubsequence(vector<int> &arr, int difference) {int ans=0;unordered_map<int,int> dp;        //假设结果序列选择当前数据,那么到目前数值为止的最长序列长度为状态转移方程for(int i=0;i<arr.size();i++) {dp[arr[i]]=dp[arr[i]-difference]+1; //状态转移方程ans=max(ans,dp[arr[i]]); //记录最大结果}return ans;}
};

提交结果

欢迎大家在评论区讨论,如有不懂的部分,欢迎在评论区留言!

更新不易,宝子们点个赞支持下,谢谢!

http://www.ds6.com.cn/news/107675.html

相关文章:

  • 企业展厅建筑外观梧州网站seo
  • 南昌如何做百度的网站南宁关键词优化服务
  • 自适应网站建设公司平台推广方式
  • 网站建设的点子seo运营
  • js特效做的好的网站江苏百度推广代理商
  • 上海住房和城乡建设厅网站首页长沙seo推广优化
  • 鼎湖网站建设公司汕头网站建设公司哪个好
  • 许昌市做网站公司免费seo工具
  • 独立做网站需要学什么条件广州seo网站营销
  • 企业做网站要注意些什么问题seo优化外链平台
  • 电子商务网站运营流程制作一个网站的全过程
  • 受欢迎的广州网站设计卢镇seo网站优化排名
  • 霸州网站制作杭州网站设计制作
  • 网站公安备案一般什么可以做友情链接平台广告
  • 男男做h的视频网站搜索引擎优化时营销关键词
  • 南京网站开发南京乐识行seo三人行网站
  • 大型web网站开发百度提交入口网站网址
  • 坪山做网站公司江苏免费关键词排名外包
  • wordpress点赞排行榜河南网站建设优化技术
  • 网站整站源码下载工具手机版怎么用百度快照
  • 汕头站扩建有连接华东线吗seo搜索排名影响因素主要有
  • 温州编程网站百度指数排行榜哪里看
  • 织梦怎么做淘客网站专业恶意点击软件
  • 河南省建设厅网站打不开seo推广优化的方法
  • 自己可以学做网站吗大数据营销策略有哪些
  • 顺德网站建设策划腰肌劳损的自我治疗和恢复的方法有什么?
  • 设计工作室装修效果图四川seo整站优化吧
  • 国内做性视频网站有哪些中国十大搜索引擎排名最新
  • 企业展厅设计费用多少深圳专业seo
  • 中山网站建设找丁生如何设计网站的首页