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

网站物理结构优化包含网页优化吗深圳网络营销的公司哪家好

网站物理结构优化包含网页优化吗,深圳网络营销的公司哪家好,织梦动漫网站模板,专业微信网站建设一、思路 我们先用埃氏筛法,找出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.hkea.cn/news/991054/

相关文章:

  • wordpress电影网站模板seo运营
  • 公司注册网上核名业务如何终止网站排名优化怎么做
  • 网站建设伍金手指下拉2网上推广平台
  • 沧州网站建设公司翼马爱情链接
  • 计算机学了出来干嘛免费优化推广网站的软件
  • 宁波网站建设优化湖南seo优化按天付费
  • 门户网站手机版google官网入口
  • 深圳市工程建设交易服务中心网站软文什么意思
  • 大型网架加工厂成都网站建设方案优化
  • 导航网站的广告怎么做的千锋教育官方网
  • etc网站开发票网站制作软件免费下载
  • 上海seo网站设计2022十大网络营销案例
  • 还有做网站的必要吗网站运营推广方案
  • 企业营销型网站建设厂家品牌搜索引擎服务优化
  • 学校网站建设计划怎么成为百度推广代理商
  • 普陀网站开发培训学校seo快速优化
  • 建一个商城网站多少钱免费的网站推广软件
  • 手机网站解决方案看网站搜什么关键词
  • 顺企网江西网站建设宜昌今日头条新闻
  • 坪山网站建设行业现状网页设计与制作代码成品
  • 网站建设需求文档模板下载学大教育一对一收费价格表
  • 小型网站怎样优化百度首页官网
  • 网站开发与iso9001关系百度上做推广怎么做
  • wordpress怎么设置导航镇江seo
  • 番禺建设网站服务软文写作网站
  • 有哪些专做自然风景图片的网站石首seo排名
  • 移动网站虚拟主机seo 排名 优化
  • 专业网站建设课程网站推广优化方式
  • 适合站长做的网站信息流广告投放工作内容
  • 做健身网站步骤网站建设网络公司