模拟赛 43

news/2025/11/20 7:48:00/文章来源:https://www.cnblogs.com/CharlieCai/p/19244251

感觉质量终于变高了,题也变难了。

T1

题面

image
image
image
image

原题竟然是 3100,和一位。不难发现最后 \(0\)\(1\) 的连通块数量必须在 \([1,2]\) 之间,且要有至少一个大于 \(1\)。先讨论 \(1\) 的连通块数量为 \([1,2]\)\(0\) 的连通块数量为 \(1\) 的情况,如图所示:

image

\(2\) 个连通块一个全部在 \(i\) 左侧,另一个全部在 \(i\) 右侧;设左侧的连通块最右列的 \(0\) 区间是 \([l_1,r_1]\),左侧连通块的区间是 \([l_2,r_2]\)。记 \(j=r_1,k=l_2\),显然必须满足 \(j\le k\)(取等的时候 \(1\) 的连通块数量为 \(2\))。考虑得到 \(i,j,k\) 后如何计算方案数,左上角的递增序列可以视为从 \((1,1)\) 每次向右/下走一步走到 \((i,j)\) 的方案数,但是由于点 \(A\) 是区间的下端点,所以最后一步必须向下走,所以视为走到 \((i-1,j)\) 的方案数。方案数易求。其它 \(3\) 处同理。暴力计算是 \(O(n^2m)\) 的,使用前缀和优化到 \(O(nm)\)

另一大类情况是类似的,只要把 \(n,m\) 交换就可以算出来了。但是注意不要把两个连通块数量都为 \(2\) 的情况又算一遍。

T2

题面

image
image
image
image

首先有结论:一棵树内离节点 \(x\) 最远的点必然是任意直径的某个端点。于是直接时光倒流,处理出每个树的任意直径的端点,加边时直接枚举所有 \(4\) 个端点的组合情况取最大值即可。

点击查看代码
#include<bits/stdc++.h>
#define int long long
#define MAXN 400005
using namespace std;
const int inf=1e18;
int n,m,ans[MAXN],cnt,head[MAXN],deep[MAXN],fa[MAXN][22],r[MAXN],qcnt,d[MAXN][2];
struct Edge{int value,next;
}edge[MAXN*2];
void addedge(int u,int v){edge[++cnt].value=v;edge[cnt].next=head[u];head[u]=cnt;
}
struct E{int u,v,b;
}e[MAXN];
struct Node{int opt,t,id,x;
}a[MAXN];
bool cmp(Node x,Node y){return x.t>y.t;
}
void dfs(int x,int fat){fa[x][0]=fat;deep[x]=deep[fat]+1;for(int i=1;i<=20;i++)fa[x][i]=fa[fa[x][i-1]][i-1];for(int i=head[x];i;i=edge[i].next){int y=edge[i].value;if(y!=fat)dfs(y,x);}
}
int LCA(int x,int y){if(deep[x]<deep[y])swap(x,y);for(int i=20;i>=0;i--){if(deep[fa[x][i]]>=deep[y])x=fa[x][i];}if(x==y)return x;for(int i=20;i>=0;i--){if(fa[x][i]!=fa[y][i])x=fa[x][i],y=fa[y][i];}return fa[x][0];
}
int dis(int x,int y){int l=LCA(x,y);return deep[x]+deep[y]-deep[l]*2;
}
int find(int x){if(r[x]!=x)r[x]=find(r[x]);return r[x];
}
struct Tmp{int x,y;
}t[10];
bool cmpt(Tmp x,Tmp y){return dis(x.x,x.y)>dis(y.x,y.y);
}
void merge(int x,int y){//cout<<x<<' '<<y<<"\n";x=find(x),y=find(y);t[1]=(Tmp){d[x][0],d[x][1]};t[2]=(Tmp){d[x][0],d[y][0]};t[3]=(Tmp){d[x][0],d[y][1]};t[4]=(Tmp){d[x][1],d[y][0]};t[5]=(Tmp){d[x][1],d[y][1]};t[6]=(Tmp){d[y][0],d[y][1]};sort(t+1,t+7,cmpt);d[y][0]=t[1].x,d[y][1]=t[1].y;//cout<<d[y][0]<<' '<<d[y][1]<<"\n";r[x]=y;
}
int que(int x){int y=find(x);return max(dis(x,d[y][0]),dis(x,d[y][1]));
}
signed main(){freopen("block.in","r",stdin);freopen("block.out","w",stdout);scanf("%lld%lld",&n,&m);for(int i=1;i<n;i++){scanf("%lld%lld",&e[i].u,&e[i].v);addedge(e[i].u,e[i].v);addedge(e[i].v,e[i].u);}dfs(1,0);for(int i=1;i<=n;i++)r[i]=i,d[i][0]=d[i][1]=i;for(int i=1;i<=m;i++){scanf("%lld%lld",&a[i].opt,&a[i].x);a[i].t=i;if(a[i].opt==2)a[i].id=++qcnt;else e[a[i].x].b=1;}for(int i=1;i<n;i++){if(!e[i].b){merge(e[i].u,e[i].v);}}sort(a+1,a+m+1,cmp);for(int i=1;i<=m;i++){if(a[i].opt==1){merge(e[a[i].x].u,e[a[i].x].v);}else{ans[a[i].id]=que(a[i].x);}}for(int i=1;i<=qcnt;i++){printf("%lld\n",ans[i]);}return 0;
}

T3

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

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

相关文章

【GitHub每日速递 20251120】神器 nvm 全攻略:多版本 Node 自由切换,安装使用疑难一网打尽

原文: https://mp.weixin.qq.com/s/SGqU9Aziv_TOz6X9dYRXzA 神器 nvm 全攻略:多版本 Node 自由切换,安装使用疑难一网打尽 nvm 是一个用于管理多个 Node.js 版本的命令行工具。简单讲,它能让你轻松切换和使用不同版…

2025年比较好的装修板材厂家最新TOP排行榜

2025年比较好的装修板材厂家最新TOP排行榜行业背景与市场趋势随着中国房地产市场的稳步发展和居民消费升级,装修建材行业迎来了新一轮增长机遇。根据中国林产工业协会最新数据显示,2024年中国装饰板材市场规模已突破…

莫队二次离线学习笔记

莫队二次离线 前言 我可能在写得时候脑子不好会写漏一些东西,所以有不会的可以直接问我。 然后我的代码有点史,建议粘下来在本地食用。 简介 对于一类莫队题目,如果对答案的贡献可以差分,且修改无法快速修改,可以…

2025年知名的橱柜生态板厂家选购指南与推荐

2025年知名的橱柜生态板厂家选购指南与推荐 行业背景与市场趋势 随着消费者对家居环保和健康需求的不断提升,生态板作为橱柜、衣柜等定制家具的核心材料,其市场需求持续增长。据中国林产工业协会数据显示,2024年中…

2025年口碑好的无醛生态板TOP实力厂家推荐榜

2025年口碑好的无醛生态板TOP实力厂家推荐榜行业背景与市场趋势随着消费者环保意识的不断提升和家居健康需求的日益增长,无醛生态板市场迎来了快速发展期。据中国林产工业协会最新数据显示,2024年我国无醛生态板市场…

2025年靠谱的无醛实木板厂家最新TOP排行榜

2025年靠谱的无醛实木板厂家最新TOP排行榜 行业背景与市场趋势 随着消费者环保意识的提升和家居健康需求的增长,无醛实木板市场近年来呈现爆发式增长。据中国林产工业协会数据显示,2024年我国无醛板材市场规模已突…

2025年口碑好的香杉实木板厂家选购指南与推荐

2025年口碑好的香杉实木板厂家选购指南与推荐行业背景与市场趋势香杉实木板作为高端环保建材的代表,近年来在装修建材市场持续升温。根据中国林产工业协会最新发布的《2024年中国木质板材行业发展报告》,2024年香杉实…

2025年质量好的平锁扣板金属屋面用户好评厂家排行

2025年质量好的平锁扣板金属屋面用户好评厂家排行行业背景与市场趋势随着我国建筑行业的持续发展和绿色建筑理念的深入人心,金属屋面系统凭借其耐久性、环保性和美观性等优势,在商业建筑、公共设施及高端住宅领域获得…

2025年质量好的古建金属屋面厂家最新TOP排行榜

2025年质量好的古建金属屋面厂家最新TOP排行榜 行业背景与市场趋势 随着我国古建筑修缮与仿古建筑市场的蓬勃发展,金属屋面因其轻量化、耐久性强、施工便捷等优势,逐渐成为传统瓦屋面的重要替代方案。据中国建筑金…

2025年评价高的仿古铝瓦品牌厂家排行榜

2025年评价高的仿古铝瓦品牌厂家排行榜行业背景与市场趋势随着中国建筑行业对传统建筑文化的重视程度不断提升,仿古建筑市场近年来呈现爆发式增长。据中国建筑金属结构协会最新数据显示,2024年中国仿古建筑材料市场规…

2025年质量好的苏式仿古铝瓦厂家推荐及选择指南

2025年质量好的苏式仿古铝瓦厂家推荐及选择指南行业背景与市场趋势随着中国传统建筑文化的复兴与现代建筑技术的融合,苏式仿古铝瓦作为传统建筑材料的现代化替代品,近年来在建筑市场获得了广泛关注。根据中国建筑金属…

AT_arc195_d [ARC195D] Swap and Erase 题解

我们可以把操作过程分成两个阶段,毕竟先进行全部的交换操作,再进行所有的删除操作,对比一边换一遍删是不会更劣的。 接下来还需要注意到一个结论,一个数至多被交换一次。我们考虑一次交换带来的影响,设相邻的两个…

AI元人文理论体系:从价值原语化到阈值管理的完整建构

AI元人文理论体系:从价值原语化到阈值管理的完整建构 摘要 AI元人文理论体系提出了一种解决智能时代价值困境的创新框架。该体系以"三值纠缠模型"为哲学基础,通过"价值原语化"方法论将抽象价值降…

Office 已知问题 GROOVEEX.DLL 带崩进程

这是一位老师向我反馈的问题,我的一个 WPF 应用程序在他的设备上,任何弹出保存文件对话框或打开文件对话框的功能,都会导致进程闪退。经过进一步调查,我发现他电脑上任何软件弹出文件保存对话框都会闪烁,问题本身…

AI元人文:价值原语化理论中的阈值管理机制

AI元人文:价值原语化理论中的阈值管理机制 摘要:本文旨在系统阐述AI元人文理论中价值原语化与阈值管理的有机统一关系。价值原语化通过构建“价值原语”这一不可再分的基本行为单元,为解决智能体的价值困境提供了本…

读社会工程卷2:解读肢体语言01非语言交流

读社会工程卷2:解读肢体语言01非语言交流1. 非语言交流 1.1. 保罗艾克曼博士1.1.1. 《情绪的解析》1.1.2. 《心理学家的读脸术:解读微表情之下的人际交往情绪密码》​1.2. 身体的每个部位都能表达我们的情绪1.2.1. 这…

知识学报:入门(1)

未完成不是题解不是教学!!! 11.20 CSES 1068 模拟。 CSES 1083 模拟。 CSES 1069 模拟。 CSES 1094 每次操作对某个数加一,要求从左到右不减小,求最小操作次数。 从左到右每个检查,如不满足就加到和前一个相同。…

英国网络安全法案强化关键基础设施监管新规

英国政府推出《网络安全与韧性法案》,对医疗、能源、交通和数字服务等关键基础设施实施更严格的安全标准,包括基于营业额的罚款制度和24小时事件报告要求,首次将托管服务提供商和数据中心纳入监管范围。更严格的网络…

开发一个出厂就是最高权限的手机或者用linux手机虚拟化运行安卓系统

开发一个出厂就是最高权限的手机或者用linux手机虚拟化运行安卓系统开发一个出厂就是最高权限的手机或者用linux手机虚拟化运行安卓系统

0#120;c000000f进不了系统怎么修复

1.BCD丢失或BCD引导文件受损 2.系统文件丢失或损坏 3.数据线或电源线接触不良/损坏 4.设备出现了问题 二、解决方法1.检查外部设备,有时电脑出现了蓝屏0xc000000f进不了系统的情况计算机的外部设备可能存在问题。 2.使…