赞
踩
问题描述:
在数据加密和数据压缩中常需要对特殊的字符串进行编码.给定的字母表A由26个小写英文字母组成,即A={a,b...z}.该字母表产生的长序字符串是指定字符串中字母从左到右出现的次序与字母在字母表中出现的次序相同,且每个字符最多出现1次.例如,a,b,ab,bc,xyz,等字符串是升序字符串.现在对字母表A产生的所有长度不超过6的升序字符串按照字典排列编码如下:
对于任意长度不超过6的升序字符串,迅速计算出它在上述字典中的编码.
算法设计:
对于给定的长度不超过6的升序字符串,计算它在上述字典中的编码.
数据输入:
输出数据由文件名为input.txt的文本文件提供.文件的第1行是一个正整数k,表示接下来共有k行,在接下来的k行中,每行给出一个字符串.
结果输出:
将计算结果输出到文件output.txt.文件共有k行,文件共有k行,每行对应于一个字符串的编码.
输出文件示例:
output.txt
1
2
以下是我的思路 : 由于字母的组合是升序,所以我先想到组合的问题,例如 序列 asxy;设它的序列为sum=1,由于它是4个字母,所以它的序列数应在 1,2,3等序列后,所以sum+=C(1.26)+C(2,26)+C(3,26).再次
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。