Problem A.Special数
题目描述
设一个正整数既是半方数又是立方数时,称其为Special 数。输入包含多组测试数据,第一行输入测试数据的组数,按若在后续每行输入n (n<=109) 的时候,请输出1 到n 中包含的所有Special 数的个数。
输入
2
1
64
输出
1
2
解答:
import java.util.Scanner;
/*
Problem A.Special数
题目描述
设一个正整数既是半方数又是立方数时,称其为Special 数。输入包含多组测试数据,第一行输入测试数据的组数,按若在后续每行输入n (n<=109) 的时候,请输出1 到n 中包含的所有Special 数的个数。
输入
2
1
64
输出
1
2
*/
public class Test{
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while(scanner.hasNext()) {
int n = scanner.nextInt();
for(int i = 0; i < n; i++) {
int num = scanner.nextInt();
int count = 0;
for(int j = 1 ; j <= num; j++) {
if(Math.pow(j, 6) <= num) count++;//该数是六次方数
else break;
}
System.out.println(count);
}
}
}
}