当前位置: 首页 > news >正文

和网站合作有哪些活动可以做国内ip地址 免费

和网站合作有哪些活动可以做,国内ip地址 免费,武昌网站建设制作,wordpress登录sso一、思路 我们先用埃氏筛法,找出1048576范围内的素数,其实找出1024以内的就够了,但是1048576也不大,所以无所谓了。 然后把输入的数字不断的判断与每个素数是否整除,然后把输入的数变为很多个素数相乘的形式&#xf…

一、思路

我们先用埃氏筛法,找出1048576范围内的素数,其实找出1024以内的就够了,但是1048576也不大,所以无所谓了。

然后把输入的数字不断的判断与每个素数是否整除,然后把输入的数变为很多个素数相乘的形式,最后素数的个数就是这个X-fcactor chains的长度。

然后种类数的话,需要把这些素数写成次方的形式,比如200=(2^3)*(5^2),然后针对2,5,dfs,判断每个数乘上去与不乘上去的情况,一直到每个数都乘上去的情况是递归出口,然后结果+1.

例如100=(2^2)*(5^2)

2^0*5^0->2^1*5^0->2^2*5^0->2^2*5^1->2*2*5^2

2^0*5^0->2^1*5^0->2^1*5^1->2^2*5^1->2*2*5^2

2^0*5^0->2^1*5^0->2^1*5^1->2^1*5^2->2*2*5^2

2^0*5^0->5^1*2^0->2^1*5^1->2^2*5^1->2*2*5^2

2^0*5^0->5^1*2^0->2^1*5^1->2^1*5^2->2*2*5^2

2^0*5^0->5^1*2^0->2^0*5^2->2^1*5^2->2*2*5^2

这样也就得出6种,(算式中,我用2^5代表2的5次方,2*2*5^2代表2的平方乘以5的平方。

二、代码

#include <iostream>
#include <set>
#include <map>
#include <vector>
#include <algorithm>
using namespace std;
typedef long long ll;
bool isPrime[1049007];
int n = 1049007, p;
vector<int> primeVector;
vector<int> facArray;
vector<int> distinctArray;
vector<int> countArray;
ll ansCount = 0;
int dfsArray[100];
void sieve()
{for (int i = 0; i <= 1049000; i++){isPrime[i] = true;}isPrime[0] = false, isPrime[1] = false;for (int i = 1; i * i <= 1049000; i++){if (!isPrime[i]){continue;}for (int j = i * 2; j <= 1049000; j += i){isPrime[j] = false;}}
}
void initPrimeVector()
{for (int i = 0; i <= 1049000; i++){if (isPrime[i]){primeVector.push_back(i);}}
}
void getFacArray()
{for (int i = 0; i < primeVector.size(); i++){if (isPrime[p]){facArray.push_back(p);break;}else if (p <= 1){break;}int primeNumber = primeVector[i];while (p % primeNumber == 0){facArray.push_back(primeNumber);p = p / primeNumber;}}
}
void flushVector()
{if (distinctArray.size() > 0){distinctArray.clear();}if (countArray.size() > 0){countArray.clear();}if (facArray.size() > 0){facArray.clear();}
}
void calc()
{map<int, int> countMap;set<int> distinctSet;for (int i = 0; i < facArray.size(); i++){countMap[facArray[i]] = 0;distinctSet.insert(facArray[i]);}for (int i = 0; i < facArray.size(); i++){int count = countMap[facArray[i]];countMap[facArray[i]] = count + 1;}for (set<int>::iterator ite = distinctSet.begin(); ite != distinctSet.end(); ite++){int number = *ite;distinctArray.push_back(number);}sort(distinctArray.begin(), distinctArray.end());for (int i = 0; i < distinctArray.size(); i++){countArray.push_back(countMap[distinctArray[i]]);}
}
void dfs(int sum)
{if (sum == facArray.size()){ansCount++;return;}for (int i = 0; i < distinctArray.size(); i++){if (dfsArray[i] < countArray[i]){dfsArray[i]++;dfs(sum + 1);dfsArray[i]--;}}
}
int main()
{sieve();initPrimeVector();while (~scanf("%d", &p)){ansCount = 0;getFacArray();calc();vector<int> array;for (int i = 0; i < distinctArray.size(); i++){dfsArray[i] = 0;}dfs(0);printf("%d %lld\n", facArray.size(), ansCount);flushVector();}return 0;
}

http://www.yayakq.cn/news/416163/

相关文章:

  • 网站建设需要什么教材网站架构分析怎么写
  • 沙发网站建设wordpress 专题页面
  • 专业北京网站建设公司排名网络营销服务有限公司
  • 网站没有域名设计师工作室
  • 平稳有序推进网站建设免费域名空间哪个好
  • 免费申请个人网站云南建设局网站首页
  • 外贸建站用什么服务器政务网站设计方案
  • 推广项目网站济源新站seo关键词排名推广
  • 面签拍照 网站备案汉阳网站推广公司
  • 网站开发总结文档青海省住房和城乡建设厅门户网站
  • 长沙专业做网站较好的公司国内外做gif的网站
  • dedecms 网站迁移wordpress不用登陆就可以评论
  • 游戏网站开发推广计划书wordpress会员中心404
  • 韶关建网站菠菜网站开发一条龙
  • 做3d办公家具教程的网站图片制作在线生成器免费版
  • 网站宝 添加二级域名昆山科技网站建设
  • 在网站加上一个模块怎么做美食网站开发的意义
  • phpcms v9网站搬站之后掉出来的文章链接显示为以前网站域名做网站后期怎么维护
  • 常州网站制作套餐网站域名注册机制
  • 网站建设后期需要做什么常用的开发环境有哪几种
  • 网上服务办事大厅seo外链工具软件
  • 网站开发 招聘 龙岩windows同步wordpress
  • 网站开发和前端开发wordpress 瀑布流布局
  • 飞阳建设网站浅议网络营销论文
  • 创建一个网站流程图wordpress小工具修改
  • 有没有专门做牛仔的网站无锡网站建站公司
  • 网站开发的主要工作微信小程序开发工具软件
  • iis5.1 新建网站长春网站建设sok
  • 空间站做网站什么版本5118营销大数据
  • 电商网站平台建设方案wordpress相册效果