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

笛卡尔树 (区间最小值)

笛卡尔树 (区间最小值)
📅 发布时间:2026/6/18 23:08:13

笛卡尔树 (区间最小值)

https://codeforces.com/gym/105588/problem/M

#include<bits/stdc++.h>
using namespace std;#define vcoistnt ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); 
#define int long long
#define vi vector<int>
#define vb vector<bool>
typedef pair<int,int> pll;const int N=2e5+10;
const int inf=1e18;
const int mod=998244353;int n,m;
vi a(N);
vi b(N);//构建笛卡尔树
vi ls(N),rs(N),sta(N);
void build(){int top=0;for(int i=1;i<=n;i++){int pos=top;while(pos>0 && b[sta[pos]]>b[i]){pos--;}if(pos>0){rs[sta[pos]] = i;}if(pos<top){ls[i]=sta[pos+1];}sta[++pos] =i;top=pos;}
}bool dfs(int l,int r,int x,int fa){if(fa && b[x]%b[fa]) return 0;if(l>=r) return 1;return dfs(l,x-1,ls[x],x)&&dfs(x+1,r,rs[x],x);
}bool check(int x){for(int i=1;i<=n;i++) b[i]=a[i]+x;for(int i=1;i<=n;i++) ls[i]=rs[i]=0;    //重置笛卡尔树build();return dfs(1,n,sta[1],0);}void solve(){cin>>n>>m;int mn=inf;for(int i=1;i<=n;i++){cin>>a[i];mn=min(mn,a[i]);}int g=0;for(int i=1;i<n;i++){g=__gcd(g,abs(a[i]-a[i+1]));}  //求最大公约数做差之后即使+x最大公约数也不会受到影响if(g==0){   //只有一个数以及所有数都相等的情况cout<<m<<" "<<m*(m+1)/2<<"\n";return;}vi d;   //统计因子d.push_back(0);     //我习惯从下标1开始for(int i=1;i*i<=g;i++){    //求最大公约数的因子if(g%i==0){d.push_back(i);if(i*i!=g) d.push_back(g/i);}}int id=d.size()-1;int cnt=0,sum=0;for(int t=1;t<=id;t++){     //检查所有合法的因子int x=d[t]-mn;if(x<1 || x>m) continue;int ret=check(x);if(ret) cnt++,sum+=x;}cout<<cnt<<" "<<sum<<"\n";}
signed main() {vcoistntcout<<fixed<<setprecision(2);int _=1;cin>>_;while(_--) solve();return 0;
}

相关新闻

  • CF2003F. Turtle and Three Sequences
  • Python 标准库 unittest 不同遮掩方式的比较
  • 天线增益与有源接收面积之间的关系

最新新闻

  • Poetry在NVIDIA AI工程中的硬件感知依赖管理实践
  • 皮肤疾病AI辅助诊断系统:轻量CNN+临床可解释性实战
  • Jable视频下载工具:让离线观看变得简单高效的终极解决方案
  • 2026年6月最新浪琴中国官方售后网点客户电话服务热线地址 - 浪琴服务中心
  • 2026宁波废品回收排行榜TOP5,这些电话你打对了吗? - 速递信息
  • DeepSeek-V4推理效率革命:CSA+HCA混合注意力与mHC流形连接实战解析

日新闻

  • 5分钟掌握Python进化算法:Geatpy高性能优化工具完全指南
  • Microchip 24AA044 EEPROM选型与应用全指南:从参数解析到实战编程
  • 华为的鸿蒙到底有多牛?为什么称作遥遥领先?

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

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

服务项目

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

快速链接

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

联系方式

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

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