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

离散化离散化差分

数组开不了1e9,但是好在坐标点会很分散,那么相当于将点“挤到”1-n的位置,一个位置映射了一个坐标点,排序后,坐标的相对位置并不发生改变,离散化由此得来。

#include<bits/stdc++.h> #define int long long #define fi first #define se second #define endl '\n' using namespace std; typedef pair<int,int>pii; void solve(){ int n,m;cin>>n>>m; vector<pii>p(n+1); map<int,int>mp; vector<int>a,x(n+10); for(int i=1;i<=n;i++){ cin>>p[i].fi>>p[i].se; if(mp[p[i].fi]==0){ a.push_back(p[i].fi); mp[p[i].fi]++; } } sort(a.begin(),a.end()); for(int i=1;i<=n;i++){ auto [pos,val]=p[i]; int idx=lower_bound(a.begin(),a.end(),pos)-a.begin(); x[idx]+=val; } vector<int>pre(n+10); pre[0]=x[0]; for(int i=1;i<=n+5;i++){ pre[i]=pre[i-1]+x[i]; } while(m--){ int l,r;cin>>l>>r; int L=lower_bound(a.begin(),a.end(),l)-a.begin(); int R=upper_bound(a.begin(),a.end(),r)-a.begin(); R--; if(R<0){ cout<<0<<endl; continue; } if(L==0){ cout<<pre[R]<<endl; continue; } cout<<pre[R]-pre[L-1]<<endl; } } signed main(){ ios::sync_with_stdio(0);cin.tie(0); int T=1;//cin>>T; while(T--){ solve(); } }

2025icpc南昌邀请赛D:

#include<bits/stdc++.h> #define int long long #define fi first #define se second #define endl '\n' using namespace std; void solve(){ int n,A,B,C;cin>>n>>A>>B>>C; vector<int>lx(n+10),ly(n+10),lz(n+10),rx(n+10),ry(n+10),rz(n+10); vector<int>x(2*n+10),y(2*n+10),z(2*n+10),prex(2*n+10),prey(2*n+10),prez(2*n+10); map<int,int>mpx,mpy,mpz; vector<int>a,b,c; for(int i=1;i<=n;i++){ cin>>lx[i]>>ly[i]>>lz[i]; cin>>rx[i]>>ry[i]>>rz[i]; int mnx=min(lx[i],rx[i]),mxx=max(lx[i],rx[i]); int mny=min(ly[i],ry[i]),mxy=max(ly[i],ry[i]); int mnz=min(lz[i],rz[i]),mxz=max(lz[i],rz[i]); lx[i]=mnx,rx[i]=mxx; ly[i]=mny,ry[i]=mxy; lz[i]=mnz,rz[i]=mxz; rx[i]++,ry[i]++,rz[i]++; if(mpx[lx[i]]==0) a.push_back(lx[i]),mpx[lx[i]]++; if(mpx[rx[i]]==0) a.push_back(rx[i]),mpx[rx[i]]++; if(mpy[ly[i]]==0) b.push_back(ly[i]),mpy[ly[i]]++; if(mpy[ry[i]]==0) b.push_back(ry[i]),mpy[ry[i]]++; if(mpz[lz[i]]==0) c.push_back(lz[i]),mpz[lz[i]]++; if(mpz[rz[i]]==0) c.push_back(rz[i]),mpz[rz[i]]++; } sort(a.begin(),a.end()),sort(b.begin(),b.end()),sort(c.begin(),c.end()); for(int i=1;i<=n;i++){ int L=upper_bound(a.begin(),a.end(),lx[i])-a.begin(); int R=upper_bound(a.begin(),a.end(),rx[i])-a.begin(); x[L]++,x[R]--; } for(int i=1;i<=n;i++){ int L=upper_bound(b.begin(),b.end(),ly[i])-b.begin(); int R=upper_bound(b.begin(),b.end(),ry[i])-b.begin(); y[L]++,y[R]--; } for(int i=1;i<=n;i++){ int L=upper_bound(c.begin(),c.end(),lz[i])-c.begin(); int R=upper_bound(c.begin(),c.end(),rz[i])-c.begin(); z[L]++,z[R]--; } int ans=0; prex[0]=x[0],prey[0]=y[0],prey[0]=y[0]; ans=max(ans,prex[0]); ans=max(ans,prey[0]); ans=max(ans,prez[0]); for(int i=1;i<=n*2;i++){ prex[i]=prex[i-1]+x[i]; prey[i]=prey[i-1]+y[i]; prez[i]=prez[i-1]+z[i]; ans=max(ans,prex[i]); ans=max(ans,prey[i]); ans=max(ans,prez[i]); } cout<<ans; } signed main(){ ios::sync_with_stdio(0);cin.tie(0); int T=1;//cin>>T; while(T--){ solve(); } }
http://www.jsqmd.com/news/813994/

相关文章:

  • 本地AI智能体Resonance:构建私有化系统级AI助手的完整指南
  • 冠珠瓷砖×莫氏鸡煲×叠滘东胜东队,德叔有请,莫叔掌勺,“力撑”叠滘龙船传承
  • FPGA覆盖配置优化:AI预测模型实践与效率提升
  • .NET 8 Web开发入门(四):注入燃料——Entity Framework Core 与 Code First 实战
  • 基于C语言实现(控制台)小型文件系统
  • 在多团队协作中通过Taotoken实现API密钥的权限隔离与审计追踪
  • Git Ignore
  • 终极Flash浏览器指南:如何在现代浏览器中畅玩经典Flash游戏
  • 从怀疑到真香!用了半年我只留下这一个,2026把录音转文字的app真的太好用了
  • 5分钟掌握RePKG:Wallpaper Engine资源提取与格式转换的终极秘籍
  • Claude API智能代理网关:架构设计、部署与生产实践
  • AGENTS.md:为AI编码助手定制的项目说明书,提升人机协作效率
  • 保姆级教程:Ubuntu 18.04下Mellanox ConnectX-3 IB网卡从驱动安装到IP配置全流程(解决ibstat状态异常)
  • XUnity.AutoTranslator完整指南:让外语游戏瞬间变中文的免费神器
  • 支持多渠道的语音机器人 2026 企业选型攻略:智能核心引擎
  • Gemini Pro私有知识库接入终极方案:RAG+微调双路径落地(含向量分块策略、重排序阈值、LLM幻觉抑制三重校验)
  • 微服务安全实践:Trust-Gate-Plugin 插件实现去中心化服务间认证与授权
  • 轻量级容器场景下 Docker 与 LXC 性能开销对比测试数据参考
  • 从第一大道的突围,到《凰标》的安稳立界@凤凰标志
  • OBS Multi RTMP插件深度解析:多平台直播的完整实战手册
  • QMCDecode终极指南:一键解锁QQ音乐加密音频的完整解决方案
  • 第一大道写传奇人生,《凰标》写文明传承根脉@凤凰标志
  • AI智能体集成Discourse社区:OpenClaw插件配置与自动化实践
  • WSA Toolbox:Windows 11上5分钟搭建Android应用生态的终极指南
  • 宇宙可能无限大 这个确实不需要外部容器,但是有限但无边界这个绝对需要更高维度
  • 前端项目启动报错常见错误总结
  • 若依框架 + AI 智能体:一个全栈开发者的落地实战与踩坑记录
  • VSCode代码搜索插件:复杂项目中的精准定位与效率提升
  • 大模型落地指南:手把手教你开发垂直AI Agent,小白也能掌握(收藏版)
  • 基于Next.js urborepo的企业级电商全栈架构实战解析