尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

ABC20260718E题

ABC20260718E题
📅 发布时间:2026/7/22 8:33:12

传送门

题意:

  • 给长度为 \(n\) 与 \(n-1\) 的序列 \(A\) 和 \(B\),所有元素都在 \([0, M-1]\) 内。
  • 一次操作:将 \(A_i\) 增加 \(1\)。
  • 目标:满足 \((A_i + A_{i+1}) \bmod M = B_i\)
  • 求最少操作次数。

\(?\) \(!\) \(拆拆\) \(!\) \(?\)

设最终数组为 \(x\),则满足 \(x_i+x_{i+1}\bmod M=B_i\)。可以发现 \(x_1\) 确定则整个序列 \(x\) 确定。
\(x_2 \equiv B_1-x_1 \pmod M\)
\(x_3 \equiv B_2-x_2 \equiv B_2-B_1+x_1\pmod M\)
\(\dots\)
\(x_n \equiv B_n-B_{n-1}+B_{n-2}-\dots +(-1)^{n+1}B_1\pmod M\)

所以设 \(s_1=0,s_{i+1}=(B_i-s_i)\bmod M\)(其实这里\(s\)就是一个满足条件的\(x\)),\(x_i=(s_i+(-1)^{i+1}x_1)\bmod M\)

让 \(A_i\) 到达 \(x_i\) 的最小步数为 \((x_i-A_i)\bmod M\)。

我们想求 \(f(x_1)=\sum_{i=1}^{n}(x_i-A_i)\bmod M\) 的最小值,设 \(v_i=(s_i-A_i)\bmod M\),考察第 \(i\) 项

当 \(i\) 是奇数是 \((v_i+x_1)\bmod M\),反之为 \((v_i-x_1)\bmod M\)。

\(i\) 为奇时 \(v_i+x_1-M*[x_1\ge M-v_i]\),反之为 \(v_i-x_1+M*[x1\ge v_i+1]\)。

\(f\) 就是一个分段函数,那最小值一定是在每一段的分界上,用 map 记录每个临界点计算 \(x_1\) 在这个区间的 \(f(x_1)\),开头 \(1\) 结尾 \(M\) 也计算一遍,取最小。复杂度 \(O(n\log n)\)。

CODE
#include<bits/stdc++.h>
using namespace std;
#define rep(i,a,b) for(int i=(a);i<=(b);i++)
#define dwn(i,a,b) for(int i=(a);i>=(b);i--)
const int N=200005;
#define int long long
int a[N],b[N],s[N],v[N],n,m;
map<int,int>mp;
signed main()
{cin>>n>>m;rep(i,1,n) cin>>a[i];rep(i,1,n-1) cin>>b[i];rep(i,2,n){s[i]=(b[i-1]-s[i-1])%m;if(s[i]<0) s[i]+=m;}int cnt=0,c0=0;rep(i,1,n){v[i]=(s[i]-a[i])%m;if(v[i]<0) v[i]+=m;cnt+=v[i];if(i&1) ++c0;else --c0;}rep(i,1,n)if(i&1){int x=(m-1-v[i])%m;if(x<=m-2) mp[x]-=m;}else if(v[i]<=m-2) mp[v[i]]+=m;int ans=cnt,tot=0;for(auto&p:mp) tot+=p.second;ans=min(ans,cnt+c0*(m-1)+tot);int ls=0;for(auto&p:mp){ls+=p.second;ans=min(ans,cnt+c0*(p.first+1)+ls);}cout<<ans<<'\n';
}

相关新闻

  • 石家庄业主必看!2026筑宅安本地化防水,告别反复渗漏 - 筑宅安
  • TI F28003x Bootloader配置与安全引导实践指南
  • Unity安卓打包全攻略:从环境配置到自动化构建的实战指南

最新新闻

  • 奇迹MU荣耀出征:跨服BOSS战与安全下载指南
  • 3 种营销玩法拉高服装店业绩,日进斗金服装收银系统轻松实现
  • 7天AI剧情带货实操,破解视频转化率难题
  • C++快读(Fast I/O)原理与实现:从getchar到fread的性能优化
  • 体验家 XMPlus 体验数据实时流处理与低延迟计算引擎:从秒级采集到秒级洞察的技术架构
  • MySQL InnoDB索引机制与优化实践详解

日新闻

  • AI云原生实战05-金融AI上云最难的不是技术,是“不出事“——TCE银行风控架构拆解
  • 2026年GEOSEO优化公司选型深度测评:五大硬核标准严选,这六家重塑搜索增长新格局 - 品牌前沿专家
  • **核验!2026年7月卡地亚香港**售后网点地址及服务电话公告 - 卡地亚服务中心

周新闻

  • SaaS软件行业GEO实践:AI搜索时代的品牌可见性与获客新路径
  • 什么是PCTFE?医药高端包装的“防潮王牌“材料
  • 【JVM调优实战】16-可视化利器-JConsole-VisualVM-JMC

月新闻

  • 2026年6月公司网站搭建最新热门渠道测评:四大低成本/零代码平台对比+避坑
  • 【Linux】Linux arm 编译QT程序,出现expected “}“报错
  • 【MATLAB例程】四基站二维AOA定位与距离辅助增强对比仿真。基于角度观测和测距修正的固定目标平面定位精度分析

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号