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

洛谷-P11240 [KTSC 2024 R2] 回文判定 题解

Solution

我们称 count_pair 为操作 A,find_character 为操作 B。

操作 B 只能做一次,我们考虑先用操作 A 获取尽量多的信息。

对于每次操作 A,为了判断回文性,我们肯定要询问某一对 \(S_i,S_{N-i-1}\) 和另一个数 \(S_k\)。会有 \(3\) 种情况:

  1. 返回 \(0\)\(S_i\neq S_{N-i-1}\),一定不是回文
  2. 返回 \(3\)\(S_i= S_{N-i-1}\)
  3. 返回 \(1\):此时 \(S_i= S_{N-i-1}\) 等价于 \(S_k\notin \{S_i,S_{N-i-1}\}\)

注意到情况 \(3\) 的等价条件符合操作 B 的形式。这启发我们得到如下做法:

首先做 \(\lfloor N/2\rfloor-1\) 次操作 A。固定上面的 \(k=0\),遍历 \(1\le i<\lfloor N/2\rfloor\),询问 \(S_i,S_{N-i-1},S_0\)。然后分讨 \(3\) 种情况,分别把使得返回值为 \(1\)\(3\) 的数对 \(i,N-i-1\) 扔进 vector<int> p,q(参考代码实现)。

此时操作 B 就派上用场了。我们询问 find_character(0,p)。根据等价条件,如果返回 \(0\) ,则 \(\forall i\)\(S_i=S_{N-i-1}\),否则序列一定不回文。

此时一定有 p 中的数 \(\neq S_0\)q 中的数 \(=S_0\)。我们需要用 \(2\) 次操作 A 判断是否有 \(S_0=S_{N-1}\)

如果 q 非空,判断 count_pair(q[0],0,N-1)==3 即可。

否则 p 一定非空。我们询问 count_pair(p[0],p[1],N-1)count_pair(p[0],0,N-1)。不难得出 \(S_0=S_{N-1}\) 当且仅当前者返回值 \(\neq3\) 且后者返回值 \(\neq0\)

Code

#include <vector>
#define eb emplace_back
using namespace std;
extern int count_pair(int,int,int);
extern int find_character(int,vector<int>);
int guess_palindromicity(int N){vector<int> p,q;for(int i=1,j=N-2;i<(N>>1);++i,--j){int k=count_pair(0,i,j);if(!k) return 0;k==1?(p.eb(i),p.eb(j)):(q.eb(i),q.eb(j));}if(p.size()&&find_character(0,p)) return 0;if(q.size()) return count_pair(q[0],0,N-1)==3;return count_pair(p[0],p[1],N-1)!=3&&count_pair(p[0],0,N-1);
}
http://www.jsqmd.com/news/917935/

相关文章:

  • 强化学习在推理模型中的应用:DeepSeek R1训练策略拆解
  • 拍秋衣不用再找模特,AI上身图直出
  • 【系统学AI】15 RAG评测体系:RAGAS四维+TruLens+ARES全套方案
  • 数字员工整合AI销冠系统与AI提效软件系统,驱动企业运营效率与智能化发展
  • WEM:把“世界”和“自我”分开,具身世界模型才能走得更远
  • 3个关键步骤实现Silero VAD语音活动检测模型的高效部署
  • 3DS游戏存档终极保护指南:用JKSM轻松备份和恢复你的游戏进度
  • DS4Windows技术深度解析:跨平台手柄映射架构设计与实现
  • 5.30 武汉黄金回收,今日克价直接报 - 资讯纵览
  • 开采沉陷动态预计模型构建与算法实现方案【附仿真】
  • 5步完全指南:掌握Unlock Music浏览器音乐解密终极方案
  • Inkscape光线追踪扩展:3步绘制专业光学图的终极指南
  • CO₂激光管怎么用?这份使用+维护指南请收好!
  • Gemini安全审计报告实战指南:如何用开源工具链复现全部17项审计用例(含Burp+LangChain定制插件)
  • 告别Excel表格!全星研发项目管理APQP软件系统:高端制造研发合规与效率的“破局者”
  • 哔哩下载姬DownKyi:免费获取B站高清视频的终极解决方案
  • 告别255字符限制:GSE高级宏编辑器让魔兽世界技能管理变得简单
  • MedMNIST医疗图像数据集:从标准化基准到医疗AI实战的完整指南
  • 合豚为什么更像“底层系统”,而不是普通设备商?
  • 临沂本地靠谱推荐高分口碑好漏电漏水检测商家-星瀚漏电漏水检测- 消防/热力/自来水/地埋电缆/卫生间漏水 - 资讯热点
  • 2026年平顶山本地六大装修品牌真实实力全面对比解析 - 国麟测评
  • 10 种蔬菜浇水小秘诀,学会了种菜不用愁
  • 【Gemini财务分析报告权威解读】:2024年Q2财报暗藏的5大现金流预警信号及3步应对法
  • 算力的理性回归:自动驾驶下半场的算力之争
  • 如何轻松下载抖音无水印视频:完整指南与实用技巧
  • Hitboxer:免费专业级SOCD按键重映射工具,彻底解决游戏输入冲突
  • 节假日亲子游玩好去处推荐,马岭天观登高祈福、山间游乐适配全年龄段 - 玖叁鹿geo
  • 杭州周边高空景区对比测评榜:马岭天观佛手桥 vs 其他网红玻璃桥,谁更出片? - 玖叁鹿geo
  • 终极Windows系统管理神器:Chris Titus Tech WinUtil一键优化完整指南
  • 不得不用的WSL