Advertisement

一本通 1200 题目:分解因数 简单递归解决

阅读量:

题目描述

复制代码
    #include <cstdio>
    #include <cstdlib>
    #include <algorithm>
    #include <cstring>
    #include <cmath>
    using namespace std;
    const int MaxN = 40000;
    bool isPrime[MaxN];
    int prime[MaxN];	//素数表
    int t, n;
    
    void calPrime()
    {
    	memset(isPrime, true, sizeof(isPrime));
    	isPrime[1] = false;
    	for(int i = 2; i <= 32768; ++i)
    	{
    		if(isPrime[i])
    		{
    			for(int j = i + i; j <= 32768; j += i)
    			{
    				isPrime[j] = false;	
    			}
    		}
    	}
    }
    
    int cal(int k, int pre)	// pre 记录上一个递归已经算出的因数
    {
    	int 

全部评论 (0)

还没有任何评论哟~