北京网站优化,保定建站软件,公司logo设计图片免费,wordpress怎样禁止采集相当于扩散#xff0c;每个数可以一次可以扩散到左右让其一样#xff0c;问最少多少次可以让整个数组都变成一样的数
使用枚举#xff0c;先将所有信息存到hash表中#xff0c;然后逐一进行枚举#xff0c;计算时间长短用看下图 考虑到环形数组#xff0c;可以把首项n放…相当于扩散每个数可以一次可以扩散到左右让其一样问最少多少次可以让整个数组都变成一样的数
使用枚举先将所有信息存到hash表中然后逐一进行枚举计算时间长短用看下图 考虑到环形数组可以把首项n放到最后这样for循环就相当于前后可以联通
贴一张别人的解释 class Solution {
public:int minimumSeconds(vectorint nums) {unordered_mapint,vectorint map;int lennums.size();for(int i0;ilen;i){map[nums[i]].push_back(i);}int maxn999999;for(auto[k,v]:map){int minn-1;v.push_back(v[0]len);for(int i0;iv.size()-1;i){minnmax((v[i1]-v[i])/2,minn);}maxnmin(maxn,minn);}return maxn;}
};