第二题 幂运算的 交卷后 完善自己的思路 修改的 应该能AC 
package jindong;
import java.util.Scanner;
public class Demo2 {
    public static void main(String[] args) {  
        Scanner in = new Scanner(System.in);  
            while (in.hasNext()) {
                int n = in.nextInt();
                //a b c d互不相同的情况  有多少种
                long count = 0;
                w :for (int i = 2; i <= n; i++) {
                    int t = 0;
                    for (int j = 2; j <= n; j++) {
                        if (Math.pow(j, i) <= n) t++;
                        else  {
                            count += (n / i) * t * 2;
                            break w;   
                        }
                    }
                }
                //加上 a和c都为1  和    a和c都不为1且a和c相等  b和d相等  两种情况
                count += n * n + (n - 1) * n;
                System.out.println(count % 1000000007);
            }
    }  
}