当前位置: 代码迷 >> C语言 >> 一个浙江大学acm题目
  详细解决方案

一个浙江大学acm题目

热度:358   发布时间:2007-05-09 11:14:33.0
一个浙江大学acm题目
http://acm.zju.edu.cn/show_problem.php?pid=1006
不懂公式的意思!!!!!
搜索更多相关的解决方案: 浙江大学  acm  php  problem  

----------------解决方案--------------------------------------------------------
晕.
又是一个阅读理解
这么长.你应该请教英语专业的才是.

----------------解决方案--------------------------------------------------------
那公式什么意思啊
----------------解决方案--------------------------------------------------------
ciphercode[i] = (plaincode[ki mod n] - i) mod 28.

ciphercode[i]代表的是密文第i个元素..
plaincode代表的明文数列

----------------解决方案--------------------------------------------------------
那ki 是什么意思?
----------------解决方案--------------------------------------------------------
ki 就是 k*i
----------------解决方案--------------------------------------------------------
这个东西挺好玩的哦!!大家来想下看谁的程序更快 更简单!
----------------解决方案--------------------------------------------------------
要中文版的!!!!!!!!!!!!1

----------------解决方案--------------------------------------------------------

我来简单说明下说错了的理解错了的 请大哥们纠正!

这是个解密任务。要求四个数组,一个原文数组(plaintext)保存原文,原文的代码数组(plaincode)保存代码,一个加密后的密文数组(ciphertext)保存密文,一个密文的代码数组(ciphercode)。
译码规则如下:'_' = 0, 'a' = 1, 'b' = 2, ..., 'z' = 26, '.' = 27. 一共28个。
加密的规则为:ciphercode[i] = (plaincode[k*i mod n] - i) mod 28,i from 0 to n - 1,k有外界输入。
输入0则结束。
加密举例: Array 0 1 2
plaintext 'c' 'a' 't' 原文数组
plaincode 3 1 20 原文代码数组
ciphercode 3 19 27 密文数组
ciphertext 'c' 's' '.' 密文代码数组




要求程序实现一下功能给输入k 密文 得到原文。

例如:
输入:5 cs.
101 thqqxw.lui.qswer
3 b_ylxmhzjsys.virpbkr
0
程序输出:cat
this_is_a_secret
beware._dogs_barking

大概就是这样吧



----------------解决方案--------------------------------------------------------
加密举例中的密文数组和密文代码数组说明搞反了 纠正下呵呵 不好意思!!应该是如下。

加密举例: Array 0 1 2
plaintext 'c' 'a' 't' 原文数组
plaincode 3 1 20 原文代码数组
ciphercode 3 19 27 密文代码数组
ciphertext 'c' 's' '.' 密文数组

----------------解决方案--------------------------------------------------------
  相关解决方案