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

题解:AT_abc200_e [ABC200E] Patisserie ABC 2

目前暂无修正。

前言:终于轮到我复杂问题简单化啦哈哈哈。

为什么题解区一车容斥啊?复杂难推导且根本没必要。这里给出一个桶 + 前缀和的做法。与这篇题解类似,但是由于其并没有详细地写出过程,写得也较为简略,所以这里来补充并完善一下这个做法的本质。

形式化题意\(n^3\) 个三元组 \((x,y,z)\) 按照 \(x+y+z\) 为第一关键字,\(x\) 为第二关键字,\(y\) 为第三关键字排序并求第 \(k\) 个。

看到求第 \(k\) 排名,我们容易想到按照关键字依次确定。

先确定 \(x+y+z=A\),按照 \(A\) 升序扫一遍,扫到差不多 \(k\) 的位置停止并记录 \(A\),通过前缀和实时计算有多少个有序三元组 \((x,y,z)\) 满足 \(x+y+z\le A\) 的。再根据 \(A\) 从小到大扫一遍 \(x\),并根据前缀和实时计算有多少个有序二元组 \((y,z)\) 满足 \(A-(y+z)\le x\) 的,最后 \(\Theta(n)\) 确定 \(y\) 即可。

我们需要先求出那么要求的东西就变成了:

  1. 满足 \(x+y+z=A\) 的有序三元组 \((x,y,z)\) 的数量。
  2. 满足 \(y+z=B\) 的有序二元组 \((y,z)\) 的数量。

\(buk_2[B]\) 表示第二条的答案,显然随便列个不等式分讨一下就可以 \(\Theta(n)\) 计算,再详细一点就是 \(y+z=B,y\in[1,n],z\in[1,n]\),读者可自行思考。

主要难点在于 \(buk_3[A]\) 如何求解。枚举多出来的一个数 \(x\),有转移:\(buk_3[A]=\sum_{x\in[1,n]}buk_2[A-x]\),然后由于 \(x\in[1,n]\),这个东西实际上是 \(buk_2\) 的一段连续区间,直接前缀和计算即可。总时间复杂度 \(\Theta(n)\)

感觉代码可读性挺高的。

#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
const int N=3e6+5;
LL n,k,sum,A,B,tot,x,y,z;
LL buk2[N],buk3[N];
int main(){scanf("%lld%lld",&n,&k);for(int i=2;i<=2*n;i++){if(i>n)buk2[i]=(n-(i-n)+1);else buk2[i]=i-1;}LL pre=0;for(int i=3;i<=3*n;i++){if(i>=(n+1))pre-=buk2[i-(n+1)];pre+=buk2[i-1];buk3[i]=pre;}for(sum=3;sum<=3*n;sum++){tot+=buk3[sum];if(tot>=k){tot-=buk3[sum];break;}}for(x=1;x<=n;x++){tot+=buk2[sum-x];if(tot>=k){tot-=buk2[sum-x];break;}}for(y=1;y<=n;y++){if(sum-x-y>n)continue;tot++;if(tot==k)break;}z=sum-x-y;printf("%lld %lld %lld",x,y,z);return 0;
}
http://www.jsqmd.com/news/24663/

相关文章:

  • CF1996G Penacony
  • 远程命令执行漏洞、SSRF、XXE、tomcat弱口令漏洞
  • Ollama API 交互
  • 项目冷场?用禅道协作白板激活团队的创新思维!
  • xxx.ped 在生物信息学中是什么?
  • Ollama 基本概念
  • 2025年桥洞力学板市场趋势与选购指南:江苏同芯木业江苏行业领先
  • 2025年桥洞力学板行业发展趋势与前五厂家推荐
  • 2025年10月桥洞力学板品牌综合评测与行业趋势分析
  • 2.HD302-070 socket can调试笔记1
  • 如何使用FlareSolverr来抓取Cloudflare网站 - 狼人:
  • 吴恩达深度学习课程二: 改善深层神经网络 第一周:深度学习的实践(一)
  • 云端微信 - 随时随地在浏览器访问
  • Ollama 运行模型
  • 【往届EI、Scopus已检索|ACM独立出版】第二届经济数据分析与人工智能国际学术会议 (EDAI 2025)
  • win11后台程序cpu高占用问题
  • 线段树的各种姿势
  • 2025 年矿井轴流通风机,矿井抽出式轴流对旋通风机,矿井压入式对旋轴流通风机,FKD 系列矿井压入式对旋轴流通风机厂家最新推荐,实力品牌深度解析采购无忧之选
  • 2025 年矿用隔爆型压入式轴流通风机,FKZ 系列矿井轴流通风机,FKCDZ 系列矿井抽出式轴流对旋通风机厂家最新推荐,聚焦资质、案例、售后的五家机构深度解读
  • 2025 年矿井压入式轴流通风机,矿用隔爆型压入式对旋轴流通风机,煤矿地面用抽出式轴流对旋通风机厂家最新推荐,精准检测与稳定性能深度解析
  • 第一次编程作业完结撒花!!!
  • LangGraph MCP - 使用LangGraph实现多智能体架构(七)
  • DP 复习 - L
  • 完整教程:swin-transformer架构解析和源码解析
  • 2025年沈阳/北京/东三省制造业企业商业秘密保护权威推荐榜单:高新技术企业与上市公司数据安全解决方案精选
  • 求职网站参考
  • LangGraph MCP - 使用LangGraph构建多智能体工作流(六)
  • 告别卡顿与等待,Rancher Vai 让集群操作“秒响应”
  • 2025 年机械设备铝型材,轻型铝型材,定制铝型材厂家最新推荐,产能、专利、环保三维数据透视
  • 2025 年铝型材框架、铝型材围栏、6063 铝型材、重型铝型材厂家最新推荐 —— 产能、专利、环保三维数据透视