洛谷P1036 选数--java实现
这题用递归实在做不出来了,还是copy一下题解吧。 题目描述 我们要求找出具有下列性质数的个数(包含输入的自然数nn): 先输入一个自然数nn(n \le 1000n≤1000),然后对此自然数按照如下方法进行处理: 不作任何处理; 在它的左边加上一个自然数,但该自然数不能超过原数的一半; 加上数后,继续按此规则进行处理,直到不能再加自然数为止. 输入格式 11个自然数nn(n \le 1000n≤1000) 输出格式 11个整数,表示具有该性质数的个数。 输入输出样例 输入 #1复制 6 输出 #1复制 6 说明/提示 满足条件的数为 6,16,26,126,36,136 import java . util . * ; public class Main { private static int num ; private static int [ ] a = new int [ 22 ] ; private static int [ ] number = new int [ 15000010 ] ; //质数表 public static void init ( ) { for ( int i = 2 ; i < 15000010 ; i ++ ) { if ( number [ i ] == 0 ) { //0为质数 for ( int j = i + i ; j <