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

P15356 「LCOI R2 T2」The Ordeal 题解

简单题。

在线很不好做,考虑离线后求出每个点第一次变黑的时间,即找到其祖先所有合法修改的时间最小值。在 dfs 过程中对每个 \(A\) 维护一个 map,遇到修改 \((x,y,t)\) 就将 \(B_x\) 的前 \(y\) 位插入 map。对节点 \(u\) 枚举 \(B_u\) 的所有前缀即可在 map 里找到与之匹配的修改。用 map 套 set 维护所有时间戳即可动态插入,删除,求最小值。

#include<bits/stdc++.h>
#define inf 2e9
using namespace std;
const int N=2e5+10;
int n,q,idx;
string a[N],b[N];
int c[N];
vector<int>G[N],ti[N];
vector<pair<int,int>> opt[N];
map<string,int> to;  //to 存 A 的编号
map<string,set<int>> val[N];void dfs(int x,int fa)
{int tim=inf,ver=to[a[x]];if(!opt[x].empty())for(auto [w,ti]:opt[x]){if(w>(int)b[x].size())continue;string p=b[x].substr(0,w);val[ver][p].insert(ti);}for(auto y:G[x])if(y!=fa)dfs(y,x);string t="";for(int w=0;w<=(int)b[x].size();w++){if(val[ver].find(t)!=val[ver].end()&&!val[ver][t].empty())tim=min((*val[ver][t].begin()),tim);if(w<(int)b[x].size())t+=b[x][w];}if(!opt[x].empty())for(auto [w,ti]:opt[x]){if(w>(int)b[x].size())continue;string p=b[x].substr(0,min(w,(int)b[x].size()));val[ver][p].erase(ti);}if(tim!=inf)ti[tim].emplace_back(x);
}
int ans[2];
int que[N];
int main()
{ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);cin>>n>>q;for(int i=1;i<=n;i++){cin>>a[i]>>b[i]>>c[i];if(to.find(a[i])==to.end())to[a[i]]=++idx;}for(int i=1;i<n;i++){int u,v;cin>>u>>v;G[u].emplace_back(v);G[v].emplace_back(u);}for(int i=1;i<=q;i++){que[i]=-1;string o;int x,y;cin>>o>>x;if(o=="solve")cin>>y,opt[x].emplace_back(make_pair(y,i));else que[i]=x;}dfs(1,0);for(int i=1;i<=q;i++){if(que[i]!=-1)cout<<ans[que[i]]<<"\n";elsefor(auto x:ti[i])ans[c[x]]++;}return 0;
}
http://www.jsqmd.com/news/389996/

相关文章:

  • 详细介绍:React Native for OpenHarmony开发环境搭建指南(一)
  • C14-2026.2.17
  • 抖音数据分析MCP开发
  • blender-bpy程序化控制物体脉冲变大动画测试(代码移植自sizebox),不建议用于渲染动画,效果不是连续变大的spurt growth
  • 这次终于选对! 更贴合继续教育的降AI率软件 千笔·专业降AIGC智能体 VS 知文AI
  • 高级概率知识1:大数定律:从0到1避坑指南(附完整代码)
  • 拖延症福音 8个一键生成论文工具测评:专科生毕业论文+开题报告高效写作指南
  • 新手也能上手!专科生专用的AI论文工具 —— 千笔AI
  • 导师严选! 更贴合继续教育的降AIGC平台 千笔·降AI率助手 VS 云笔AI
  • 题解:洛谷 P1080 [NOIP 2012 提高组] 国王游戏
  • 题解:洛谷 P1012 [NOIP 1998 提高组] 拼数
  • 2026国内耐用的除尘器厂商推荐排行榜单,带你了解行业好厂,RTO/滤筒除尘器/活性炭箱/旋风除尘器,除尘器制造厂推荐榜 - 品牌推荐师
  • 2024年9月GESP真题及题解(C++七级): 矩阵移动 - 详解
  • 题解:洛谷 P4447 [AHOI2018初中组] 分组
  • 题解:洛谷 P4995 跳跳!
  • 别再瞎找了!AI论文网站 千笔写作工具 VS WPS AI,自考写论文更高效!
  • 题解:洛谷 P1094 [NOIP 2007 普及组] 纪念品分组
  • 题解:洛谷 P1208 [USACO1.3] 混合牛奶 Mixing Milk
  • 题解:洛谷 P5019 [NOIP 2018 提高组] 铺设道路
  • 题解:洛谷 P1090 [NOIP 2004 提高组] 合并果子
  • ABC445G Knight Placement 题解
  • 题解:洛谷 P1478 陶陶摘苹果(升级版)
  • 题解:洛谷 P1106 删数问题
  • 题解:洛谷 P3817 小A的糖果
  • 题解:洛谷 P1803 凌乱的yyy / 线段覆盖
  • Spark大数据处理:技术、应用与性能优化【2.7】
  • Android Studio 中 Activity 的五种启动模式
  • 微信小程序查看备案号
  • 题解:洛谷 P1223 排队接水
  • 2026年市场上可靠的下水道疏通企业有哪些,下水道疏通排行榜行业优质排行榜亮相 - 品牌推荐师