[题解]AtCoder Beginner Contest 429(ABC429) C~F

news/2025/10/29 9:31:49/文章来源:https://www.cnblogs.com/Sinktank/p/19173103

这次的题解超迟到了。

C - Odd One Subsequence

用一个桶记录 \(i\) 出现的次数 \(c_i\)

则构造三元组相当于从一个桶中任选 \(2\) 个,再从另一个桶中选 \(1\) 个。

所以答案即为:

\[\sum_i \binom{c_i}{2}\times (n-c_i) \]

可以 \(O(n)\) 做。代码用的 map 所以是 \(O(n\log n)\)

点击查看代码
#include<bits/stdc++.h>
#define int long long
using namespace std;
const int N=2e5+5;
int n,ans;
map<int,int> c;
signed main(){cin>>n;for(int i=1,x;i<=n;i++){cin>>x,c[x]++;}for(auto i:c){int x=i.second;ans+=x*(x-1)/2*(n-x);}cout<<ans<<"\n";return 0;
}

D - On AtCoder Conference

考虑倍增。记 \(f[i][j]\) 为从 \(i\) 开始跳 \(2^j\) 步经过的人数(算开头不算结尾),每次查询 \(\log\) 地跳就行。

但是 \(m\)\(10^{12}\),必须先离散化。

离散化后第 \(i\) 个点算得的贡献,放在原图上需要乘上 \(i\) 和前一个人的距离再累加。

image

时间复杂度 \(O(n\log n)\)

点击查看代码
#include<bits/stdc++.h>
#define int long long
using namespace std;
const int N=5e5+5;
int n,m,c,f[N][20],ans,a[N],b[N],tn;
signed main(){cin>>n>>m>>c;for(int i=0;i<n;i++){cin>>a[i];b[tn++]=a[i];}sort(b,b+tn),tn=unique(b,b+tn)-b;for(int i=0;i<n;i++){a[i]=lower_bound(b,b+tn,a[i])-b;f[a[i]][0]++;}for(int i=1;i<20;i++){for(int j=0;j<tn;j++){f[j][i]=f[j][i-1]+f[(j+(1<<(i-1)))%tn][i-1];}}for(int i=0;i<tn;i++){int cur=i,s=0,dis=(i?b[i]-b[i-1]:m-b[tn-1]+b[i]);for(int j=19;~j;j--){if(s+f[cur][j]<c){s+=f[cur][j];(cur+=(1<<j))%=tn;}}s+=f[cur][0];ans+=s*dis;}cout<<ans<<"\n";return 0;
}

E - Hit and Away

答案显然是每个 D 点出发到达 S 点的最短路 + 次短路之和。

求最短路和次短路,我们可以直接使用 BFS(因为边权都是 \(1\))。初始时将所有点压入队列,为了避免一个点被另一个点同时转移最短路和次短路,我们记录下最短路和次短路的来源,保证它们不同即可。

时间复杂度 \(O(n+m)\)

点击查看代码
#include<bits/stdc++.h>
#define PII pair<int,int>
#define eb emplace_back
using namespace std;
const int N=2e5+5,M=2e5+5;
struct Path{int o,u,d;};
queue<Path> q;
int n,m,f[N][2],d[N][2];
string s;
vector<int> G[N];
inline void uadd(int u,int v){G[u].eb(v),G[v].eb(u);}
signed main(){cin>>n>>m;for(int i=1,u,v;i<=m;i++) cin>>u>>v,uadd(u,v);cin>>s,s=' '+s;memset(f,-1,sizeof f);for(int i=1;i<=n;i++){if(s[i]=='S') f[i][0]=i,q.push({i,i,0});}while(!q.empty()){int o=q.front().o,u=q.front().u,td=q.front().d;q.pop();for(int i:G[u]){if(f[i][0]==-1){f[i][0]=o,d[i][0]=td+1;q.push({o,i,td+1});}else if(f[i][1]==-1&&f[i][0]!=o){f[i][1]=o,d[i][1]=td+1;q.push({o,i,td+1});}}}for(int i=1;i<=n;i++) if(s[i]=='D')cout<<d[i][0]+d[i][1]<<"\n";return 0;
}

F - Shortest Path Query

两个连续区间的答案是可合并的。

考虑在线段树上,用 \(d_x[i,j]\) 表示对于 \(x\) 管辖的区间 \([l,r]\)\((l,i)\) 走到 \((r,j)\) 的最短路,则有转移:

\[d_x[i][j]=\max\limits_{k=0}^2(d_l[i][k]+d_r[k][j]+1) \]

仅需维护单点修改,查询时直接取根节点即可。

时间复杂度 \(O(n+q\log n)\)

点击查看代码
#include<bits/stdc++.h>
#define lc (x<<1)
#define rc (x<<1|1) 
using namespace std;
const int N=2e5+5,inf=0x3f3f3f3f;
int n,a[N],q;
string s[3];
bitset<N> f;
struct SEG{int d[N<<2][3][3];inline void pushup(int x){memset(d[x],inf,sizeof d[x]);for(int i=0;i<3;i++){for(int j=0;j<3;j++){for(int k=0;k<3;k++){d[x][i][j]=min(d[x][i][j],d[lc][i][k]+d[rc][k][j]+1);}}}}inline void calc(int x,int p){for(int i=0;i<3;i++){bool f=1;for(int j=i;j<3;j++){if(s[j][p]=='#') f=0;d[x][i][j]=d[x][j][i]=(f?j-i:inf);}}}inline void build(int x,int l,int r){if(l==r) return calc(x,l),void();int mid=(l+r)>>1;build(lc,l,mid),build(rc,mid+1,r);pushup(x);}inline void chp(int x,int a,int l,int r){if(l==r) return calc(x,l),void();int mid=(l+r)>>1;if(a<=mid) chp(lc,a,l,mid);else chp(rc,a,mid+1,r);pushup(x);}
}seg;
signed main(){ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);cin>>n;for(int i=0;i<3;i++) cin>>s[i],s[i]=' '+s[i];seg.build(1,1,n);cin>>q;int x,y;while(q--){cin>>x>>y,x--;s[x][y]=(s[x][y]=='#'?'.':'#');seg.chp(1,y,1,n);if(seg.d[1][0][2]^inf) cout<<seg.d[1][0][2]<<"\n";else cout<<"-1\n";}return 0;
}

这个好像叫 ddp(动态dp)。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/949493.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2025年靠谱的电动丝杆升降机优质厂家推荐榜单

2025年靠谱的电动丝杆升降机优质厂家推荐榜单在工业自动化领域,电动丝杆升降机作为重要的线性运动执行元件,广泛应用于物料搬运、生产线调整、医疗设备、舞台机械等多个领域。随着中国制造业的持续升级,对高精度、高…

2025年热门的进口品牌针式铰链用户口碑最好的厂家榜

2025年热门的进口品牌针式铰链用户口碑最好的厂家榜 随着家居五金行业的快速发展,针式铰链因其高承重、耐用性强、安装便捷等优势,逐渐成为高端定制家居的首选配件。2025年,进口品牌针式铰链市场竞争激烈,消费者对…

ChatGPT Atlas浏览器发布:为何这款AI浏览器可能无人问津

本文分析了OpenAI新推出的ChatGPT Atlas浏览器面临的多重挑战,包括功能重叠、数据隐私担忧、平台局限性以及实际应用效果等问题,探讨了这款AI浏览器可能难以获得用户青睐的原因。OpenAI刚刚登台发布了ChatGPT Atlas,…

2025年10月工装装修公司推荐:口碑榜对比指南

把办公室从“能用”变成“好用”,把实验室从“合规”变成“高效”,把酒店从“开业”变成“常满”,这是多数企业业主在2025年寻找工装装修公司时的真实诉求。政策层面,《“十四五”建筑业发展规划》继续强调绿色建造…

2025年热门的伸铝箔四方袋厂家最新权威推荐排行榜

2025年热门的伸铝箔四方袋厂家最新权威推荐排行榜 随着工业包装需求的不断升级,伸铝箔四方袋因其优异的防潮、防静电、耐高温等特性,成为电子、食品、医药等行业的重要包装选择。为帮助用户快速锁定优质供应商,本文…

2025年靠谱的排烟防火阀厂家实力及用户口碑排行榜

2025年靠谱的排烟防火阀厂家实力及用户口碑排行榜 在建筑消防系统中,排烟防火阀是保障人员安全疏散和防止火势蔓延的关键设备。选择一家技术实力强、产品质量可靠、售后服务完善的排烟防火阀厂家至关重要。本文基于2…

2025年上海实木全屋定制机构权威推荐榜单:全屋定制装修/全屋定制加盟/全屋定制源头厂家精选

上海实木全屋定制市场正以每年超18%的速度增长,2025年市场规模预计突破1.5万亿元。 在当前消费升级与家居产业绿色转型的背景下,上海实木全屋定制行业迎来新一轮发展契机。据行业数据显示,中国定制家居市场规模2025…

2025年比较好的房车重型滑轨厂家推荐及采购指南

2025年比较好的房车重型滑轨厂家推荐及采购指南随着房车旅行和露营生活方式的流行,房车重型滑轨作为关键五金配件,其质量直接影响使用体验和安全性。本文将为您推荐2025年市场上表现优异的五家房车重型滑轨制造商,并…

words

smuggled pharmaceutical surging Demand slimmer obese appointment

2025年口碑好的蜗轮减速机最新TOP品牌厂家排行

2025年口碑好的蜗轮减速机最新TOP品牌厂家排行 行业概述 蜗轮减速机作为工业传动领域的核心部件,凭借其结构紧凑、传动比大、自锁性能好等优势,在自动化设备、包装机械、冶金矿山等领域广泛应用。2025年随着智能制…

存储过程删执行日志

1、先去aries_task表查1个月前的task_id(大概估一个,然后去查) 2、再去aries_case_running_log表,查大于该task_id的count总数,用总数除以10000,得到下列循环的次数 ,也就是i的值 注意: 1、不要打开aries_case…

深度解析蒙牛如何借纷享销客CRM提效终端门店,6大场景揭秘!

纷享销客凭借扎实的行业经验与独具特色的技术平台,为蒙牛打造了全面的营销数字化业务支撑体系。通过多业务流的融合,实现渠道销售与费用的深度结合,真正做到业财一体化,大幅提升人员效率及费用投放效率!让营销数字…

2025年评价高的嵌入式衣物烘干机高评价厂家推荐榜

2025年评价高的嵌入式衣物烘干机高评价厂家推荐榜 随着智能家居的普及,嵌入式衣物烘干机凭借其节省空间、高效节能、智能化操作等优势,成为现代家庭的热门选择。2025年,市场上涌现出众多优秀的烘干机品牌,其中一些…

2025年质量好的无尘车间净化铝型材厂家最新实力排行

2025年质量好的无尘车间净化铝型材厂家最新实力排行 随着半导体、生物医药、精密电子等行业的快速发展,无尘车间净化铝型材的需求持续增长。这类材料需具备高强度、耐腐蚀、低挥发等特性,对生产厂家的技术实力和品控…

2025年质量好的中空旋转平台减速机厂家最新用户好评榜

2025年质量好的中空旋转平台减速机厂家最新用户好评榜 在工业自动化领域,中空旋转平台减速机作为精密传动设备的核心部件,其性能和质量直接影响设备的运行效率与稳定性。2025年,随着智能制造需求的不断提升,市场对…

2025年10月网络推广公司评价榜:五强数据横向对比

“流量越来越贵,线索却越来越少”——这是2025年三季度《中小企业数字化运营报告》里被提及最多的痛点。生产型老板白天盯产线,晚上刷后台,推广账户的钱像沙漏一样消失,却看不到像样的询盘;品牌部刚写完新品文案,…

2025年靠谱的橱柜抽屉滑轨最新TOP厂家排名

2025年靠谱的橱柜抽屉滑轨最新TOP厂家排名在当今家居装修和家具制造领域,橱柜抽屉滑轨作为五金配件中的核心部件,其质量直接影响着使用体验和产品寿命。优质的滑轨不仅需要具备顺滑静音的开合体验,更要有出色的承重…

2025年靠谱的IP网络音响厂家最新实力排行

2025年靠谱的IP网络音响厂家最新实力排行在数字化与智能化浪潮的推动下,IP网络音响系统已成为现代音频解决方案的主流选择。2025年,随着5G、物联网和AI技术的深度融合,IP网络音响市场呈现出前所未有的繁荣景象。这类…

电流探头在共差模电流分离中的应用解析​

在电子设备和电力系统的运行过程中,电流信号通常包含共模电流和差模电流两种成分。共模电流是流经设备对地回路的非有用电流,容易引发电磁干扰(EMI)和设备异常发热等问题;而差模电流是参与能量传输或信号传递的有…

10.26 —— (VP)2023ccpc哈尔滨

这场又又又被打爆了,但赛时状态比上一场好些,可能是因为正在磕的题有切入点导致的qwq。 比较难绷的是,本场的签到题没做出来。 B. Memory 还是思维太差劲了,应该想到整数和小数部分可以分开处理,具体细节见代码。…