1 条题解
-
0
solution
小模拟。
我们开一个映射,记 表示字母 作为密文时对应的原信息,遍历时若发现 对应两个不同的原信息则不合法,遍历后若发现有字母没出现则不合法。最后按题意输出。
通过记录。
code
#include<bits/stdc++.h> using namespace std; char a[105], b[105], c[105], mp[205], vis[205]; int main(){ cin >> a >> b >> c; int la=strlen(a), lc=strlen(c); for (int i=0; i<la; mp[a[i]]=b[i], vis[b[i]]=1, i++) if (vis[b[i]]&&b[i]!=mp[a[i]]) { puts("Failed"); return 0; } for (int i='A'; i<='Z'; i++) if (!vis[i]) { puts("Failed"); return 0; } for (int i=0; i<lc; i++) cout << mp[c[i]]; return 0; }
- 1
信息
- ID
- 734
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 9
- 标签
- 递交数
- 10
- 已通过
- 7
- 上传者