尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

OI 笑传 #18

OI 笑传 #18
📅 发布时间:2026/6/19 20:13:21
Septembersan

今天是 ABC 427 的 DEF。

D

博弈,套路的设状态,令 \(dp_{i,k_1,k_2,op}\) 表示棋子在点 \(i\),Alice 还剩 \(k_1\) 步可以走,Bob 还剩 \(k_2\) 步可以走,现在拿棋子的是 \(op\),\(0\) 是 Alice,\(1\) 是 Bob。此时 Alice 一定赢吗。

好像其实不用再开 \(op\) 一维的。

然后对于所有的 \(dp_{i,0,0,0}\),根据自己的字母附上值。

然后从 \((i,0,1,1),(i,1,1,0),(i,1,2,1)\) 这种顺序枚举每个点及其邻接边转移即可,时间复杂度是 \(O(KN)\) 的。足够了。

赛时被神秘 RE 卡了一会。

code

Show me the code
#define psb push_back
#define mkp make_pair
#define ls p<<1
#define rs (p<<1)+1
#define rep(i,a,b) for( int i=(a); i<=(b); ++i)
#define per(i,a,b) for( int i=(a); i>=(b); --i)
#define rd read()
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll read(){ll x=0,f=1;char c=getchar();while(c>'9'||c<'0'){if(c=='-') f=-1;c=getchar();}while(c>='0'&&c<='9'){x=(x<<3)+(x<<1)+(c^48);c=getchar();}return x*f;
}
const int N=3e5+45;
bitset<N> dp[16][16][3];
vector<int> e[N];
int n,m,k;
string s;
void init(){for(int i=1;i<=n;i++)e[i].clear();return ;
}
void solve(){cin>>n>>m>>k;cin>>s;s=' '+s;for(int i=1;i<=m;i++){int u,v;cin>>u>>v;e[u].push_back(v);}for(int i=1;i<=n;i++){if(s[i]=='A')dp[i][0][0][0]=1;else dp[i][0][0][0]=0;}for(int b=1;b<=k;b++){for(int pp=0;pp<=1;pp++){int al=b-1+pp,bb=b; int op=!(al==bb);if(op==1){for(int i=1;i<=n;i++){bool kill=1;for(int v:e[i]){if(dp[v][al][bb-1][op^1]==0){kill=0;break;}}dp[i][al][bb][op]=kill;}}if(op==0){for(int i=1;i<=n;i++){bool kill=0;for(int v:e[i]){if(dp[v][al-1][bb][op^1]==1){kill=1;break;}}dp[i][al][bb][op]=kill;}}}}if(dp[1][k][k][0]==0){cout<<"Bob"<<'\n';}else cout<<"Alice"<<'\n';return ;
}
int main(){int T;cin>>T;while(T--){init();solve();}return 0;
}

E

读完题就想到可以把推垃圾的过程想象成自己在移动,于是每次移动检测下自己相对坐标下周围 \(H\times W\) 里面还有没有垃圾,由于 \(H,W\) 很小所以怎么做都行,BFS 找最小路径即可。

注意不能移动到垃圾上,还有要找到最小的包括全部垃圾的矩形范围进行操作。

code

Show me the code

F

这种数据范围除了去想搜素和神秘 DP 之外还有一个重要的东西就是折半查找。

tbd。

相关新闻

  • MiniExcel开源资料
  • 2025上海保洁公司最新权威推荐榜:专业服务与用户口碑深度解
  • 心得体会

最新新闻

  • 终极解决方案:如何一键修复Kindle电子书封面,让数字书架重焕光彩
  • 没有购买票据,黄金还能正常回收吗?答案在这里 - 开心测评
  • 【防水案例】青岛顶楼反复漏水,楼长修楼彻底根治施工全过程 - 青岛防水品牌推荐
  • 从理论到实践:深度解析崖山数据库YashanDB的HTAP架构与落地挑战
  • 抖音无水印批量下载终极指南:5分钟掌握douyin-downloader完整教程
  • MAA明日方舟助手:3分钟快速上手的智能自动化工具完全指南

日新闻

  • 5分钟掌握Python进化算法:Geatpy高性能优化工具完全指南
  • Microchip 24AA044 EEPROM选型与应用全指南:从参数解析到实战编程
  • 华为的鸿蒙到底有多牛?为什么称作遥遥领先?

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号