Problem 4142 --D密钥破解4142: D密钥破解
Time Limit |
$1$ 秒/Second(s) |
Memory Limit |
$128$ 兆字节/Megabyte(s) |
提交总数 |
$12$ |
正确数量 |
$0$ |
"
裁判形式 |
标准裁判/Standard Judge |
我的状态 |
尚未尝试 |
难度 |
|
分类标签 |
|
当前分类(单击移除):
单击选择分类:
淮南市是重要的能源基地,目前在积极研发新能源氢能汽车。新款氢能源汽车上需要设计一套安全设备,阻止非经授权的第三方调整工作参数。这套设备的其中一个模块是加解密系统,系统中存储有某个密钥,可以利用这个密钥加密字符串。现组织安全公司对系统安全性进行攻击演练,即判定如果截获了一对明文和密文,是否存在有效算法破解出密钥。
对于给定的常数x,y和小写字母间的双射f: { 'a',b', ... ,'z'} --> { 'a',b', ... ,'z'} ,定义对于字符串S的一次递进操作为:先将S循环左移x位,再对S的每个字符Sᵢ应用y次变换S'ᵢ=f(Sᵢ)。
现在对于所给出的x,y、双射f的值表F和两个长度为n的字符串S,T,请求出最小的正整数k,使得对S做k次递进操作的结果是T。
输入的第1行包含3个整数n,x,y。
接下来1行,包含1个长度为26的字符串F,每个字符依次表示 f('a') ,f('b') ... f('z')
接下来1行,包含1个长度为n的字符串S。
接下来1行,包含1个长度为n的字符串T。
输出包含1行1个正整数,表示所求k的值。特别地,如果对S进行任意多次的变换操作都不能得到T, 输出1行1个-1。
14 1 1
bcdefghijklmnopqrstuvwxyz
heavenburnsred
yhqexuqvuhgkhd
对字符串循环左移1位是指将字符串的首个字符移动到末尾,循环左移x位是指重复x次循环左移1位。例如, heavenburnsred循环左移6位将得到burnsredheaven, 循环左移14位将得到heavenburnsred。
样例解释:
对于样例1, 对S进行递进操作将依次得到: fbwfocvsotsfei、cxgpdwtputgfjg、yhqexuqvuhgkhd。
本题记录 |
用 户(点击查看用户) |
运行号(点击购买题解) |
时 间 |
算法最快[$ $ms]
|
|
|
|
内存最少[$ $KB]
|
|
|
|
第一AC |
|
|
|
第一挑战 |
1e-12
|
1102463 |
2024-05-29 18:15:55 |