网站页面
当前课程
成员
General
主题 1
主题 2
主题 4
主题 5
主题 6
主题 7
主题 8
主题 9
主题 10
主题 11
主题 12
主题 13
主题 14
主题 15
主题 16
主题 17
主题 18
主题 19
主题 20
[HAOI2005]破译密文
成绩 | 0 | 开启时间 | 2013年01月16日 星期三 10:55 |
折扣 | 0.8 | 折扣时间 | 2013年01月16日 星期三 10:55 |
允许迟交 | 是 | 关闭时间 | 2013年01月16日 星期三 10:55 |
输入文件 | encrypt.in | 输出文件 | encrypt.out |
【问题描述】
信息的明文是由0利1组成的非空序列。但在网络通信中,为了信息的安全性,常对明文进行加密,用密文进行传输。密文是由0、1和若干个密码字母组成,每个密码字母代表不同的01串,例如,密文=011a0bf00a01。密码破译的关键是确定每个密码的含义。
经过长期统计分析,现在知道了每个密码的固定长度,如今,我方又截获了敌方的两段密文S1和S2,并且知道S1=S2,即两段密文代表相同的明文。你的任务是帮助情报人员对给定的两段密文进行分析,看一看有多少种可能的明文。
【输入文件】
第1行: S1 (第1段密文)
第2行: S2 (第2段密文)
第3行: N (密码总数, N<=26)
第4—N+3行: 字母i 长度i (密码用小写英文字母表示, 密码长度<=100)
第2行: S2 (第2段密文)
第3行: N (密码总数, N<=26)
第4—N+3行: 字母i 长度i (密码用小写英文字母表示, 密码长度<=100)
【输出文件】
M(表示有M种可能的明文)
【输入输出样例】
encrypt.in
100ad1
cc1
4
a 2
d 3
c 4
b 50
cc1
4
a 2
d 3
c 4
b 50
encrypt.out
2
【约束条件】
明文的长度<=10000
注意:
如果两个密文出现矛盾情况,则输出0。