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

题解:AT_agc064_c [AGC064C] Erase and Divide Game

不难想到从低位到高位建 01-trie,向左相当于保留偶数踢走奇数,向右相当于保留奇数踢走偶数。先从叶子节点走掉的人胜利。从叶子到根往上更新博弈状态即可。但是我们发现如果逐个插入数的话插入次数爆炸了,考虑以区间处理。但是又发现无法直接做到区间连续插入,插入的数分布是散的。

如何将区间连续处理是这道题比较难想的点。其实把树扭曲一下变成这样(图丑):

就好了。为什么说好了,因为一层上面的编号是连续的,这样就可以打区间标记了。根为第 \(0\) 层,如果我们把第 \(k\) 层的 \(2^{k}\) 个点都建出来,打上空点、胜点、输点的标记,再往父亲合并。转为区间的话,每个区间记左端点、右端点和这个区间内点的类型。绿线是左儿子和右儿子的分割线,对于 \(0 \le x < 2^{k-1}\)\(x\)\(x + 2^{k-1}\) 合并。区间合并后还是区间,所以这样是可以层层推上去的。区间合并用双指针维护。

实现的时候注意,如果有区间跨过了绿线,要把它拆成左右两半。

点击查看代码
#include <bits/stdc++.h>
#define int long long
using namespace std;
const int N = 10010;
int f[5][5],n,tot;
struct dat{int l,r,v;
}a[2 * N],b[4 * N],c[4 * N];
void init(){tot = 0;
}
void solve(){int L = 0,R = -1;scanf("%lld",&n);for(int i = 1,l,r; i <= n; i++){scanf("%lld%lld",&l,&r);if(R + 1 != l)a[++tot] = {R + 1,l - 1,0};a[++tot] = {l,r,1},L = l,R = r;}a[++tot] = {R + 1,(1ll << 60) - 1,0};for(int i = 60; i >= 1; i--){int mid = (1ll << (i - 1)),totb = 0,totc = 0;for(int j = 1; j <= tot; j++){if(a[j].l < mid)b[++totb] = {a[j].l,min(mid - 1,a[j].r),a[j].v};if(a[j].r >= mid)c[++totc] = {max(mid,a[j].l) - mid,a[j].r - mid,a[j].v};}L = 1,R = 1;int now = -1;tot = 0;while(L <= totb && R <= totc){a[++tot].l = now + 1;now = min(b[L].r,c[R].r);a[tot].r = now,a[tot].v = f[b[L].v][c[R].v];if(now == b[L].r)L++;else R++;}}if(a[1].v == 1)printf("Takahashi\n");else printf("Aoki\n");
}
signed main(){int T;for(int i = 0; i <= 2; i++)for(int j = 0; j <= 2; j++)f[i][j] = 1;f[0][0] = 0,f[1][1] = 2;scanf("%lld",&T);while(T--){init();solve();}return 0;
}
http://www.jsqmd.com/news/796312/

相关文章:

  • 修改Oracle用户密码永不过期
  • 网络排障实战:当视频卡顿时,如何用Wireshark抓包并提取H.264码流分析?
  • SignalTap调试进阶:巧用约束与别名捕获FPGA优化后的关键信号
  • 1.OCEANBASE整体架构
  • 插入排序:原理与优化全解析
  • 集群命令组
  • CANoe与外部程序交互:基于FDX协议的跨语言数据交换实战
  • 2026年4家高低温真空电机厂家对比:半导体锂电选型看这篇 - 速递信息
  • 【案例】昆山璟赫机电工程有限公司无锡哲讯智能|SAP全链路数字化管理,赋能高端流体系统工程高质量发展
  • 逆向实战:绕过MFC程序的“万次点击”验证机制
  • 2026年公众号编辑器挑选全攻略:从入门到精通 - 行业产品测评专家
  • 2026无人船品牌技术实力横向对比:澄峰科技、云洲、华测、欧卡智舶等厂商产品谱系与性能参数全览 - 品牌推荐大师1
  • HoRain云--PHP包含文件全解析
  • 快速变现!天猫超市购物卡回收技巧揭秘 - 团团收购物卡回收
  • 2026年无锡充电桩运营系统与社区生态物联解决方案深度横评 - 企业名录优选推荐
  • 2026年无锡充电桩运营系统与江苏社区充换电SaaS平台深度横评 - 企业名录优选推荐
  • 5分钟掌握AI图像分层:layerdivider完整使用指南
  • 别再写if-else了!Spring Boot参数校验用@Validated和@Pattern,这10个正则表达式直接抄
  • AI提示词汇总
  • 多工况金属管浮子流量计主流厂家盘点:防腐、卫生与微小流量领域的硬核较量 - 品牌推荐大师1
  • 归并排序:分治思想的经典应用
  • 2026年GEO实战复盘:这10家服务商如何帮客户拿下AI搜索高地? - 品牌2025
  • 2026年浙江二手线路板设备回收处置全景指南:从成本困局到产能升级的正确打开方式 - 年度推荐企业名录
  • 西安不干胶标签定制厂家排名2026:规上工厂产能对比与快印代工选型建议 - 优质企业观察收录
  • 无锡木木金银回收:滨湖专业的黄金回收找哪家 - LYL仔仔
  • 终极macOS菜单栏管理指南:用Ice告别杂乱界面
  • 5分钟掌握跨平台歌词同步:开源工具终极指南
  • 免费医学影像转换神器:dcm2niix完整使用指南
  • 构建开源流媒体实时告警系统:从事件驱动架构到OBS集成实战
  • 别再只用fswebcam拍照了!用树莓派+罗技C310打造你的简易监控系统(附定时抓拍脚本)