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

ICPC2025西安区域赛题解

9f920c18c96f47c77a3c623114d72df8
//C
#include <bits/stdc++.h>
using namespace std;
int n,m,q,lst[1000010],sm;
int cnt[1000010],ll,rr;
list<int> edg[1000010];
vector<int> orl[1000010];
void Del(int u){if(edg[u].size()>1){for(list<int>::iterator it=edg[u].begin();it!=edg[u].end();++it){if(cnt[*it]==3){sm--;}cnt[*it]--;}}for(list<int>::iterator it=edg[u].begin();it!=edg[u].end();++it){if(edg[*it].size()==2){for(list<int>::iterator itt=edg[*it].begin();itt!=edg[*it].end();++itt){if(cnt[*itt]==3){sm--;}cnt[*itt]--;}continue;}if(edg[*it].size()>2){if(cnt[u]==3){sm--;}cnt[u]--;}}for(list<int>::iterator it=edg[u].begin();it!=edg[u].end();++it){edg[*it].pop_back();}
}
void Add(int u){for(int i=0;i<orl[u].size();i++){int v=orl[u][i];if(ll<=v&&rr>=v){edg[u].push_back(v);edg[v].push_front(u);}}if(edg[u].size()>1){for(list<int>::iterator it=edg[u].begin();it!=edg[u].end();++it){cnt[*it]++;if(cnt[*it]==3){sm++;}}}for(list<int>::iterator it=edg[u].begin();it!=edg[u].end();++it){if(edg[*it].size()==2){for(list<int>::iterator itt=edg[*it].begin();itt!=edg[*it].end();++itt){cnt[*itt]++;if(cnt[*itt]==3){sm++;}}continue;}if(edg[*it].size()>2){cnt[u]++;if(cnt[u]==3){sm++;}}}
}
void solve(){rr=n;for(ll=n;ll>=1;ll--){Add(ll);while(sm){//cout<<rr<<endl;
            Del(rr);rr--;}lst[ll]=rr;//cout<<ll<<" - "<<lst[ll]<<endl;
    }
}
int main(){ios::sync_with_stdio(0);cin>>n>>m>>q;for(int i=1;i<=m;i++){int a,b;cin>>a>>b;orl[a].push_back(b);orl[b].push_back(a);}for(int i=1;i<=n;i++){sort(orl[i].begin(),orl[i].end());}solve();while(q--){int l,r;cin>>l>>r;if(r>lst[l]){cout<<"NO"<<endl;continue;}cout<<"YES"<<endl;}
}
//I
#include <bits/stdc++.h>
using namespace std;
int n,m,a[5050][5050],siz[1000010],lca[5050][5050],fa[1000010];
int main(){ios::sync_with_stdio(0);cin>>n;for(int i=1;i<=n;i++){for(int j=i;j<=n;j++){cin>>a[i][j];a[j][i]=a[i][j];}}for(int i=1;i<=n;i++){for(int j=i+1;j<=n;j++){int lcaa=a[1][i]^a[1][j]^a[i][j];lca[j][i]=lca[i][j]=lcaa;}}for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){if(lca[i][j]==i){siz[i]++;}}}for(int i=2;i<=n;i++){int fl=0;for(int j=1;j<=n;j++){if(i==j||lca[i][j]!=j){continue;}if(siz[j]<siz[fl]||fl==0){fl=j;}}fa[i]=fl;}for(int i=2;i<=n;i++){cout<<i<<" "<<fa[i]<<endl;}
}

 

http://www.jsqmd.com/news/514275/

相关文章:

  • Leather Dress Collection 高性能推理配置:针对STM32等嵌入式场景的云端协同方案
  • 20260320-前五章的一些个人补充知识
  • 芯片为什么会“变老”?
  • 保姆级教程:用再生龙Clonezilla给Linux系统做全盘备份(含U盘启动盘制作)
  • CNN vs. RCNN:图像分类与目标检测的实战对比(附代码示例)
  • 告别‘invalid character’:一次搞懂conda版本字符串的坑与.condarc的终极写法
  • Day42综合案例--学生信息表
  • AI与Python在地球科学多源数据交叉融合中的前沿技术应用
  • 报错记录:springboot后端报错java.lang.IllegalArgumentException: Invalid character found in method name
  • 1118-Row size too large.The maximum row size for the used table type,not counting BLOBs,is 65535
  • 为M2LOrder服务配置内网穿透:实现本地开发环境的远程调试
  • Lattice3.10新手必看:从新建项目到下载程序的完整流程(附VScode编写技巧)
  • 从农业到地质:高光谱遥感数据集在不同领域的应用实例解析
  • 嵌入式函数返回值设计:0成功与错误分类工程实践
  • AI入门必看:从零开始掌握人工智能核心概念(附学习路线图)
  • Scratch编程等级考试1~4级真题解析与备考策略
  • 鸟类虚拟解剖实验平台
  • Nanbeige 4.1-3B快速部署:WSL2环境下Windows一键启动指南
  • 2026 Cinema 4D渲染引擎排名(50万+农场作业数据)+ C4D云渲染推荐
  • 含SVG的风电并网系统稳定性分析与优化
  • Android 禁止侧载将正式实施,需要等待 24 小时冷静期
  • Phi-3-vision-128k-instruct赋能STM32开发:嵌入式AI视觉应用快速原型设计
  • 永磁同步直线电机 PMLSM 矢量控制滑模控制 SVPWM 仿真模型探究
  • 直接上结论:更贴合论文写作全流程的AI论文工具,千笔·专业论文写作工具 VS speedai
  • 避坑指南:ESP32测WiFi信号强度(RSSI)和吞吐量,这几个参数设置错了等于白测
  • RS-485与 CAN电平特性分析与对比
  • 全球首个包含全工具链的运维智能体 x OpenClaw组合登场
  • ClawdBot惊艳效果:餐厅菜单照片→自动识别菜名/价格/辣度图标→生成双语点餐卡
  • 我的桌面氛围灯就靠它了:STM32F103C8T6 + PWM + 电容触摸,做一个能调亮度的迷你台灯
  • 毫米波雷达点云分割模型优化:基于PointNet的改进与性能突破