【RQNOJ】PID510 / 文机天藏

2720阅读 0评论2018-01-21 khls27
分类:LINUX

题目描述

为人性僻耽佳句,语不惊人死不休。这是伟大诗圣杜甫的写照,也是zhclk的毕生追求。终于,一个机会,天授神书——《锦绣文机》,只是它经过了加密,等待着它的有缘人……

题目描述:

扉页上有x行密码,每行密码y个字符(仅包括数字及字母(区分大小写),y可能大于256),此密码暗合阴阳两仪四象八卦,因此x、y均为奇数(有关系吗?),每行密码中包含大量迷惑信息,但每行密码去掉某一个字符后可形成回文串,将前m行要去掉的字符的ASCII码相加的和模19920229得到f[-1],剩下x-m行做同样操作得到f[0],将f[-1],f[0]代入函数f[k]:=a*f[k-2]+b*f[k-1],求得第n项的值模19920229(怎么又是这个数…)即为神书密码。


数据范围

对于80%的数据:0

对于100%的数据:0

输入格式

第1行依次为x a b n m (含义见题目)

第2行直至文件结束为密码正文

输出格式

一个数f[n]

分析:
此题天机在于回文。对于任意回文字符串,将所有字符异或结果一定是0;如果回文中,恰好有一个“另类”,那么所有字符的异或必然就是这个“另类”。

点击(此处)折叠或打开

  1. int get_exp(const char *str, int len)
  2. {
  3.      int ret = 0;
  4.      int i;
  5.      for (i = 0; i < len; i++)
  6.              ret ^= str[i];

  7.     return ret;
  8. }


上一篇:获取网络接口IP地址和掩码
下一篇:理解linux内核的软中断