博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
KMP HDOJ 4300 Clairewd's message
阅读量:6208 次
发布时间:2019-06-21

本文共 1541 字,大约阅读时间需要 5 分钟。

 

题意:完全不懂,最后还是看题解才理解了。第一行字符串是密文变成明文的规则,比如第二个样例:“qwertyuiopasdfghjklzxcvbnm”,‘q'对应的明文为’a','w'对应'b'....... 第二行是密文+明文的形式,明文有密文转换来,但不完整,求原来最小的可能文本。

分析:将密文+明文都当做密文转成明文,那么转换后的字符串前缀密文的部分解密,和原来的字符串的后缀明文匹配,从原来字符串的后半部分和转换之后的字符串的开头开始匹配,得到的是明文(密文)的长度。

收获:题目读不懂多读几遍,再不行yy题意,想想会涉及什么算法

 

代码:

/************************************************* Author        :Running_Time* Created Time  :2015-8-24 19:42:24* File Name     :A.cpp ************************************************/#include 
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;#define lson l, mid, rt << 1#define rson mid + 1, r, rt << 1 | 1typedef long long ll;const int N = 1e5 + 10;const int INF = 0x3f3f3f3f;const int MOD = 1e9 + 7;char ch[30], m[30], s[N], rs[N];int fail[N];void get_fail(char *P, int lenp) { int i = 0, j = -1; fail[0] = -1; while (i < lenp) { if (j == -1 || P[j] == P[i]) { i++; j++; fail[i] = j; } else j = fail[j]; }}int KMP(char *T, char *P) { int lent = strlen (T), lenp = strlen (P); get_fail (P, lenp); int i = 0, j = 0; while (i < lent) { while (j != -1 && T[i] != P[j]) j = fail[j]; i++; j++; } return j;}int main(void) { int T; scanf ("%d", &T); while (T--) { scanf ("%s%s", &ch, &s); for (int i=0; i<26; ++i) { m[ch[i]-'a'] = 'a' + i; } int len = strlen (s); for (int i=0; i

  

转载于:https://www.cnblogs.com/Running-Time/p/4755900.html

你可能感兴趣的文章
Redis-3.2主从复制与集群搭建 推荐
查看>>
随便说说:在ASP.NET应用程序中上传文件
查看>>
【jQuery Demo】图片由下至上逐渐显示
查看>>
在.NET中使用SMTP发送邮件
查看>>
Unity Camera的两种模式
查看>>
3.5. Ticket
查看>>
越狱第一至五季/全集迅雷下载
查看>>
从Mysql slave system lock延迟说开去
查看>>
归并排序
查看>>
RecyclerView的下拉刷新和加载更多 动画
查看>>
ABAP常见面试问题
查看>>
程序猿是如何解决SQLServer占CPU100%的
查看>>
web.xml
查看>>
HBase-1.2.4LruBlockCache实现分析(一)
查看>>
SDN交换机在云计算网络中的应用场景
查看>>
革新以太网交换机架构 全光网络的风刮进园区
查看>>
物联网商机迸发 LPWAN芯片现身 本文转自d1net(转载)
查看>>
【eclipse转idea的第一天】配置idea
查看>>
error: Refusing toundefine while domain managed save image exists
查看>>
wordpress在新窗口打开留言者链接
查看>>