ROSECODE 282
凯撒移位
Caesarian shift
你需要解码下面的字符串:
yparjcfwnixigfwzt
生成这个编码字符串的伪代码如下:
function encode(string, n=29101923, offset=10^9)
begin
len=length of string
let array be an array with offset+len elements
for i=1 to n
begin
array[i]=1
end
for i=n+1 to offset+len
begin
array[i]=sum of previous n elements
end
for i=1 to len
begin
encoded_string[i]=string[i] shifted by (array[offset+i] mod 26)
end
return encoded_string
end
示例:
encode("solution", 101, 10^5) 返回 "bvktehbs"
[作者用时: <1m]