您的位置:首页 > 其它

字符串编码(腾讯笔试)

2017-11-02 20:02 375 查看


题目描述:

假定一种编码的编码范围是a ~ y的25个字母,从1位到4位的编码,如果我们把该编码按字典序排序,形成一个数组如下:
a, aa, aaa, aaaa, aaab, aaac, … …, b, ba, baa, baaa, baab, baac
… …, yyyw, yyyx, yyyy
其中a的Index为0,aa的Index为1,aaa的Index为2,以此类推。
编写一个函数,输入是任意一个编码,输出这个编码对应的Index.

 

输入描述:

输入一个待编码的字符串,字符串长度小于等于100.

 

输出描述:

输出这个编码的index

 

输入例子:

baca

 

输出例子:

16331

import java.util.Scanner;
public class Main{

public static void main(String args[]){

int[] dex=new int[4];
dex[3]=1;

for(int i=2;i>=0;i--){
dex[i]=dex[i+1]*25+1;
}

Scanner sc=new Scanner(System.in);

while(sc.hasNext()){
String string=sc.next();

char[] cs=string.toCharArray();
int out=0;
for(int i=0;i<cs.length;i++){
out+=(cs[i]-'a')*dex[i]+1;
}
System.out.println(out-1);
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: