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

联合省选 R6

https://cplusoj.com/d/senior/contest/69a595501363e1a0769508ec

T1

水题,考虑一个数是怎么扩展的,注意到可以拆成是左、右边距离 \(>d\) 和中间距离 \(<=d\) 的,所以左右边可以分开考虑。注意到越小能扩展越远,所以说一个数往左能扩展最远的地方可以从左边距离 \(<=d\) 且值 \(>=a_i\) 的最小值转移过来,这个东西直接从大到小扫描线+线段树单点修改区间查 \(\min\) 维护,然后中间的顺便用线段树单点加+区间求和就行了。

Code

#include<bits/stdc++.h>
#define ls (k<<1)
#define rs (ls|1)
#define lm ((l+r)>>1)
#define rm (lm+1)
using namespace std;
namespace IO{#define gc getchar#define pc putchar#define ps putsinline int in(){int x=0,f=1;char c=gc();for(;!isdigit(c);c=gc())if(c=='-')f=-1;for(;isdigit(c);c=gc())x=x*10+(c-'0');return x*f;}inline void out(int x){if(x<0)pc('-'),x=-x;if(x>=10)out(x/10);pc(x%10+'0');}inline void outsp(int x){out(x),pc(' ');}inline void outln(int x){out(x),ps("");}
}
using namespace IO;
const int N=500005;
int n,d,a[N],p[N],f[N],g[N],ans[N];
namespace SGT{const int M=N<<2;int mn[M],cnt[M];int Min(int x,int y){return a[x]<a[y]?x:y;}void pushup(int k){mn[k]=Min(mn[ls],mn[rs]),cnt[k]=cnt[ls]+cnt[rs];}void update(int k,int l,int r,int x){if(l>x||r<x)return;if(l==r){mn[k]=x,cnt[k]=1;return;}update(ls,l,lm,x),update(rs,rm,r,x);pushup(k);}int query(int k,int l,int r,int s,int t){if(l>t||r<s)return 0;if(l>=s&&r<=t)return mn[k];return Min(query(ls,l,lm,s,t),query(rs,rm,r,s,t));}int count(int k,int l,int r,int s,int t){if(l>t||r<s)return 0;if(l>=s&&r<=t)return cnt[k];return count(ls,l,lm,s,t)+count(rs,rm,r,s,t);}
}
using namespace SGT;
int main(){freopen("set.in","r",stdin);freopen("set.out","w",stdout);n=in(),d=in();a[0]=N;for(int i=1;i<=n;i++)a[i]=in(),p[a[i]]=i;for(int i=n;i>=1;i--){int x=p[i],y;y=query(1,1,n,x-d,x-1);if(y)f[x]+=f[y]+count(1,1,n,y,x);y=query(1,1,n,x+1,x+d);if(y)g[x]+=g[y]+count(1,1,n,x,y);ans[x]=f[x]+g[x]+1;update(1,1,n,x);}for(int i=1;i<=n;i++)i<n?outsp(ans[i]):out(ans[i]);return 0;
}
http://www.jsqmd.com/news/431876/

相关文章:

  • AI大模型支持下的:Python双驱动计量经济学多源数据处理、机器学习预测及复杂因果识别全流程
  • 2026年北京小程序开发公司怎么选?全流程定制服务成企业数字化转型关键 - 品牌2026
  • break return continue的区别
  • 聊聊云贵川知名发电机组制造商,中高电气口碑好价格贵不贵? - 工业品牌热点
  • 2026年云南地区柴油发电机组加工厂性价比高的厂家推荐 - 工业推荐榜
  • 2026年好用的数据分析软件推荐:提升运营效率的实用工具 - 品牌排行榜
  • 2026无人机培训机构哪家好?行业实力机构推荐 - 品牌排行榜
  • 聊聊口碑好的定制电磁加热辊生产厂家,福建地区好用的有哪些? - myqiye
  • 2026年 库存管理软件厂家推荐排行榜:医药/可视化看板/多仓库协同/批次保质期/制造企业库存管理软件,智能高效解决方案精选 - 品牌企业推荐师(官方)
  • 回收沃尔玛购物卡,秒变现金秘籍! - 团团收购物卡回收
  • 杰理之tws主从切换出现断连【篇】
  • 2026年3月平移电动门厂家推荐,精准检测与稳定性能解析 - 品牌鉴赏师
  • 2026年汽车钣金喷漆厂家权威推荐榜:汽车钣金喷漆哪家好/汽车钣金喷漆多少钱/汽车钣金喷漆店推荐/选择指南 - 优质品牌商家
  • 2026年市面上口碑好的石墨坩埚成型液压机厂家推荐,四柱式石墨坩埚压机/框架式石墨坩埚液压机/伺服石墨坩埚成型机,石墨坩埚成型液压机品牌怎么选 - 品牌推广师
  • 杰理之测试发现延迟47ms比理论大很多【篇】
  • CHFS - 轻量级文件共享服务器部署
  • 基于Java springboot大学生家教服务管理系统家教服务预约学习评价家教招聘应聘(源码+文档+运行视频+讲解视频)
  • 教你正确回收沃尔玛购物卡,避免踩坑! - 团团收购物卡回收
  • AI优化找哪个公司?从SEO到GEO:浙江六大服务商重塑制造领域AI搜索优化新范式 - 品牌推荐大师1
  • 一文讲透|10个一键生成论文工具测评:本科生毕业论文+科研写作必备神器
  • 2026年免费的游戏数据分析平台实用指南 - 品牌排行榜
  • 基于Java springboot大学生家教兼职管理系统补习班预约(源码+文档+运行视频+讲解视频)
  • 2026年3月转塔冲床厂家推荐,精准检测与稳定性能深度解析 - 品牌鉴赏师
  • 2026最新环境损害司法鉴定推荐!西南地区优质机构权威榜单发布 - 十大品牌榜
  • 2026最新社会稳定风险评估/废气废水处理/水土保持方案与监测/环境损害司法鉴定/环境影响评价与验收推荐 - 十大品牌榜
  • 基于Java springboot大学生家教预约管理系统(源码+文档+运行视频+讲解视频)
  • 杰理之检查当前设备mac的通话是不是虚拟通话【篇】
  • 最好用的发膜是哪款?20款爆款发膜大对决 - 博客万
  • 2026年 制造业ERP软件厂家推荐排行榜:生产计划、库存采购、BOM与供应链管理,智能工厂全流程高效协同解决方案 - 品牌企业推荐师(官方)
  • 基于Java springboot大学生志愿者管理系统活动报名(源码+文档+运行视频+讲解视频)