Unique Values 满足条件的区间数(双指针)
创始人
2025-05-28 19:11:38
0

感觉双指针的主要思想就是就是摒弃显然已经被排除的一段

统计和为kkk的子矩阵,枚举区间右端点rrr,当[l,r][l,r][l,r]子段和超过k,lk,lk,l右移
因为显然[l,r]不能包含在满足要求的矩阵中(太大了),要缩小,摒弃掉l列以左的所有
双指针分别是区间左右端点[l,r][l,r][l,r],区间数res+=(r−l+1)res+=(r-l+1)res+=(r−l+1)

Unique Values(序列S中不含重复元素的连续子序列的数量)

这里要求是区间中不含重复元素,当出现重复元素(此时出现在下标i,上一次mp[a[i]])mp[a[i]])mp[a[i]])
要摒弃掉mp[a[i]]以左的元素,有个注意点,

  • 1、双指针分别是last和rlast和rlast和r,lastlastlast是上一段满足条件的区间段的最后一个元素,
    lastlastlast以左(包含lastlastlast)已经被摒弃掉了,如果根据mpmpmp判断出序列中之前有重复元素,
    要先判断该元素出现的上一个位置mp[a[i]]mp[a[i]]mp[a[i]]是否在lastlastlast之前,即已经被摒弃掉了
    如果已经被摒弃掉了就不需要考虑,否则才要摒弃掉mp[a[i]]mp[a[i]]mp[a[i]]及以左所有
  • 2、其次区间数res+=(r−last)res+=(r-last)res+=(r−last)
#include
using namespace std;
#define int long long int
mapmp;
const int N=1e5+10;
int n;
int a[N];
signed main(){cin>>n;for(int i=1;i<=n;i++){cin>>a[i];}int res=0;// 1 2 3 4int last=0;for(int i=1;i<=n;i++){if(mp[a[i]]){	if(mp[a[i]]>last)last=mp[a[i]];//2 12 3  12 3 2 6 9  遍历到最后一个2,last=第一个3}res+=(i-last);//last是上一段满足条件的区间段的最后一个元素mp[a[i]]=i;}	cout<

以下思路是对的,但是求(last,r]这段的子区间数量 方式不对,也不知道为啥不对,给的两个样例也都通过了
不过双指针求区间数量的常见做法都是 每次遍历(一个端点,左指针或右指针)时,利用左右指针相减

#include
using namespace std;
#define int long long int
mapmp;
const int N=1e5+10;
int n;
int a[N];
signed main(){cin>>n;for(int i=1;i<=n;i++){cin>>a[i];}int len=0;int res=n;int last=0;for(int i=1;i<=n;i++){if(mp[a[i]]==0||mp[a[i]]len++;mp[a[i]]=i;}else{len=i-mp[a[i]];// 1 2 3 4res+=(1+len)*len/2-len;last=mp[a[i]];mp[a[i]]=i;}}res+=(1+len)*len/2-len;cout<

在这里插入图片描述

相关内容

热门资讯

台湾宜兰县海域发生6.6级地震... 央视新闻消息,中国地震台网正式测定:12月27日23时05分在台湾宜兰县海域(北纬24.67度,东经...
一杯热牛奶的治愈力:乳业如何在... 随着气候的异常,这个冬天很多人都感到忽冷忽热,免疫力下降,数据也证明了这一点。2025年第49周中国...
全国八成帝王蟹,竟来自这个东北... 订阅 快刀财经 ▲ 做您的私人商学院帝王蟹的红火给这座边境城市带来了生机。作者 :朱秋雨来源:盐财经...
Omdia:三季度印度智能手机... 10月22日消息,Omdia最新研究数据显示,2025年第三季度,印度智能手机市场同比增长3%,出货...
全球首个机场出发层 VPD 启... 6月14日消息,全球首个支持机场出发层泊车代驾VPD落地广州白云机场,用户开着传祺向往M8乾崑系列 ...
同力股份:无人驾驶产品目前已完... 新京报贝壳财经讯(记者黄鑫宇)2025年12月26日晚,北交所上市公司陕西同力重工股份有限公司(即“...
新消费周报 | 淘宝闪购开通无... 《CBNData新消费周报》精选本周新消费领域最新动态,公司头条、消费风向、智能创新、营销动态、可持...
穿越波动的稳健之选:优质可转债... 作者:烟雨导语:在当下复杂多变的市场环境中,可转债因其"股债双性"的独特优势,成为投资者平衡风险与收...
6天4板!华联控股拟12.35... Arizaro项目LCE(碳酸锂当量)总资源量概要。 图源:华联控股公告本报记者 李贝贝 上海报道1...
触及重大违法行为,或将被退市!... 本文来源:时代周报 作者:林昀肖12月26日,*ST长药(300391.SZ)公告称,公司因涉嫌定期...