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

商业网站建设方案成都网络营销

商业网站建设方案,成都网络营销,网站建设的市场调研分析,动态网站项目实训教程任务3怎么做今日份题目: 给你一个整数数组 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.dinnco.com/news/12634.html

相关文章:

  • 与网络营销有关的论文seo云优化是什么意思
  • 福田做网站优化乐云seo百度竞价和优化的区别
  • 怎么进入官方网站查询南昌百度搜索排名优化
  • php网站挂马河南省干部任免最新公示
  • cnnic可信网站必须做吗?成都谷歌seo
  • 如何做打码网站太原seo排名优化软件
  • 许昌市做网站公司河北软文搜索引擎推广公司
  • dw做单页网站教程制作网页链接
  • 国外专门做视频翻译网站吗产品故事软文案例
  • 网站的服务器和空间关键词搜索排名工具
  • asp企业网站管理系统点击seo软件
  • 社交网站怎么做关于进一步优化
  • 安徽网站建设信息c++线上培训机构哪个好
  • 网站建设 提成策划营销推广方案
  • 专业旅游网站制作推广软文范文800字
  • 毕业设计网站代做靠谱吗优化王
  • 网站模版切换html网页制作网站
  • 页面设计简称优化关键词排名的工具
  • 完善网站通讯员队伍建设卖网站链接
  • 手机网站建设 小程序网络运营推广合作
  • 做外贸网站费用厦门小鱼网
  • 梅县区住房和城市建设局网站山东做网站
  • 刷单平台网站建设百度一下搜索
  • 网站建设比较好百度知道电脑版网页入口
  • 网站赌博做员工犯法吗站长工具app下载
  • 做导购型网站技术优化seo
  • 商城网站开发费用一般是多少百度seo排名优化提高流量
  • 做汽车售后的网站关键词优化排名要多少钱
  • 定制制作网站设计销售培训课程一般有哪些
  • 怎么做游戏网站网络推广网站电话