目录
一、题目描述
3020年,空间通信集团的员工人数突破20亿人,即将遇到现有工号不够用的窘境。现在,请你负责调研新工号系统。继承历史传统,新的工号系统由小写英文字母(a-z)和数字(0-9)两部分构成。新工号由一段英文字母开头,之后跟随一段数字,
比如"aaahw0001",“a12345”,“abcd1”,“a00”。注意新工号不能全为字母或者数字,允许数字部分有前导0或者全为0。但是过长的工号会增加同事们的记忆成本,现在给出新工号至少需要分配的人数 X 和新工号中字母的长度 Y,求新工号中数字的最短长度 Z。
二、输入输出
1.输入描述
一行两个非负整数 X Y,用数字用单个空格分隔。
说明: 数字长度不能为0
2.输出描述
输出新工号中数字的最短长度 Z
3.示例
输入示例1
260 1
输出示例1
1
输入示例2
26 1
输出示例2
1
输入示例3
2600 1
输出示例3
2
三、代码实现Java
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
while (in.hasNextLong()) {
long minNumOfPeople = in.nextLong();
int length = in.nextInt();
int lenOfNum = 1;
while (true) {
double pow = Math.pow(26, length);
double pow1 = Math.pow(10, lenOfNum);
double maxNumOfPeople = pow * pow1;
if (maxNumOfPeople >= minNumOfPeople) {
System.out.println(lenOfNum);
break;
} else {
lenOfNum++;
}
}
}
}