洛谷 题解 P1071 潜伏者
注意:每一个字母都要有且只有对应一个答案,并且,每一个答案都要有且只有对应一个字母,例如:
题目所述“如某条信息“XYZ”被翻译为“ABA”就违反了“不同字母对应不同密字”的规则。”其实还有另外一种违反情况需要考虑:信息“OPO”被翻译为“JKL”。这时也要输出Failed。
就像DNA的碱基对一样。
#include<bits/stdc++.h> using namespace std; char s[120],sb[120]; string a,b,c; int main() { cin>>a>>b>>c; for(int i=0;i<a.length();i++) if((!s[int(a[i])]||s[int(a[i])]==b[i])&&(!sb[int(b[i])]||sb[int(b[i])]==a[i])) { s[int(a[i])]=b[i]; sb[int(b[i])]=a[i]; } else { cout<<"Failed"; return 0; } for(int i=int('A');i<=int('Z');i++) if(!s[i]) { cout<<"Failed"; return 0; } for(int i=int('A');i<=int('Z');i++) if(!sb[i]) { cout<<"Failed"; return 0; } for(int i=0;i<c.length();i++) { if(!s[int(c[i])]) { cout<<"Failed"; return 0; } c[i]=s[int(c[i])]; } for(int i=0;i<c.length();i++) cout<<c[i]; return 0; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本