描述如果一个数只有质数因子2,3,5,那么这个数是一个丑数。
前10个丑数分别为1,2,3,4,5,6,8,9,10,12,
找出第 N 个丑数
每次for循环只执行一次,我认为复杂度应该是O(n),有没有大佬解惑一下
public class Demo04 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int number = ChouShu(input.nextInt());
System.out.println(number);
}
public static int ChouShu(int n) {
if(n<=0) {
System.out.println("输入有误!");
return -1;
}
if(n==1) {
return 1;
}
int k=3,count=1;
for(int i=2;i<k;i++) {
if(i%2==0 || i%3==0 || i%5==0) {
count++;
if(count==n) {
return i;
}
}
k++;
}
return -1;
}
}
为1也是一个丑数