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

成都网站建设托管广州百度seo优化排名

成都网站建设托管,广州百度seo优化排名,餐饮公司网站制作,angular2做的网站有宣传一下 算法提高课整理 CSDN个人主页:更好的阅读体验 原题链接 题目描述 给定整数 N N N,求 1 ≤ x , y ≤ N 1 \le x,y \le N 1≤x,y≤N 且 gcd ⁡ ( x , y ) \gcd(x,y) gcd(x,y) 为素数的数对 ( x , y ) (x,y) (x,y) 有多少对。 输入格式 输…

宣传一下 算法提高课整理

CSDN个人主页:更好的阅读体验

Start

原题链接

题目描述

给定整数 N N N,求 1 ≤ x , y ≤ N 1 \le x,y \le N 1x,yN gcd ⁡ ( x , y ) \gcd(x,y) gcd(x,y) 为素数的数对 ( x , y ) (x,y) (x,y) 有多少对。

输入格式

输入一个整数 N N N

输出格式

输出一个整数,表示满足条件的数对数量。

数据范围

1 ≤ N ≤ 1 0 7 1 \le N \le 10^7 1N107

输入样例:

4

输出样例:

4

思路

首先考虑暴力。

本题答案为:
∑ i = 1 n ∑ j = 1 n ∑ p ∈ P [ gcd ⁡ ( i , j ) = p ] \sum_{i=1}^{n}\sum_{j=1}^{n}\sum_{p \in \mathbb{P}}^{}[\gcd(i,j)=p] i=1nj=1npP[gcd(i,j)=p]

gcd ⁡ ( i , j ) = p \gcd(i,j)=p gcd(i,j)=p 变成 gcd ⁡ ( i , j ) = 1 \gcd(i,j)=1 gcd(i,j)=1 然后把 p p p 除到前面的 n n n 里。

即: ∑ p ∈ P ∑ i = 1 ⌊ n p ⌋ ∑ j = 1 ⌊ n p ⌋ [ gcd ⁡ ( i , j ) = 1 ] \sum_{p \in \mathbb{P}}^{}\sum_{i=1}^{\lfloor\frac{n}{p}\rfloor}\sum_{j=1}^{\lfloor\frac{n}{p}\rfloor}[\gcd(i,j)=1] pPi=1pnj=1pn[gcd(i,j)=1]

和 5.5.1 可见的点 相同,我们可以将以上代数式变换为:

2 × ∑ p ∈ P ∑ i = 1 ⌊ n p ⌋ φ ( i ) + 1 2 \times\sum_{p \in \mathbb{P}}^{}\sum_{i=1}^{\lfloor\frac{n}{p}\rfloor}\varphi(i)+1 2×pPi=1pnφ(i)+1

这里不再进行推导,读者可以自行点击上方链接进行阅读。

此时进行计算,时间复杂度近似为 O ( n 2 ln ⁡ n ) \large{O(\frac{n^2}{\ln n})} O(lnnn2),将 n = 1 0 7 n=10^7 n=107 代入计算,发现超过 1 0 8 10^8 108,在 1 s 1s 1s 的时限内会 TLE \text{TLE} TLE

我们看到 ∑ i = 1 n p φ ( n p ) \large\sum_{i=1}^{\frac{n}{p}}\varphi(\frac{n}{p}) i=1pnφ(pn) 可以考虑预处理欧拉函数前缀和。

假设 s k = ∑ i = 1 k φ ( i ) \large{s_k=\sum_{i=1}^{k}\varphi(i)} sk=i=1kφ(i),则原式可化为:

2 × ∑ p ∈ P s ⌊ n p ⌋ + 1 \large{2 \times\sum_{p \in \mathbb{P}}^{}s_{\lfloor\frac{n}{p}\rfloor}+1} 2×pPspn+1

此时我们枚举 n n n 的所有质因数进行计算就不会超时。

算法时间复杂度

预处理 φ ( i ) \varphi(i) φ(i) O ( n ) O(n) O(n);
预处理 s i s_i si O ( n ) O(n) O(n);
计算结果: O ( n ln ⁡ n ) \large{O(\frac{n}{\ln n})} O(lnnn)

因此最高时间复杂度: O ( n ) O(n) O(n),可以过。

注意: 数论题目中,开 long long 已经是常识,所以很有必要写一条 #define int long long 避免犯错。

AC Code

C + + \text{C}++ C++

#include <iostream>
#define int long longusing namespace std;const int N = 1e7 + 10;int n;
int primes[N], cnt;
int euler[N], s[N];
bool st[N];void get_eulers(int n)
{euler[1] = 1;for (int i = 2; i <= n; i ++ ){if (!st[i]){primes[cnt ++ ] = i;euler[i] = i - 1;}for (int j = 0; primes[j] <= n / i; j ++ ){int t = primes[j] * i;st[t] = true;if (i % primes[j] == 0){euler[t] = euler[i] * primes[j];break;}euler[t] = euler[i] * (primes[j] - 1);}}
}main()
{scanf("%lld", &n);get_eulers(n); // 线性筛质数和欧拉函数for (int i = 1; i <= n; i ++ ) // 预处理欧拉函数前缀和s[i] = s[i - 1] + euler[i];int res = 0;for (int i = 0; i < cnt; i ++ ) // 枚举 n 以内的质数res += 2 * s[n / primes[i]] - 1;printf("%lld\n", res);return 0;
}

228aa7bed3e021faf24cf8560d3e47bb.gif

最后,如果觉得对您有帮助的话,点个赞再走吧!


文章转载自:
http://rant.zydr.cn
http://childermas.zydr.cn
http://laminate.zydr.cn
http://undercount.zydr.cn
http://electropolish.zydr.cn
http://resort.zydr.cn
http://anilide.zydr.cn
http://porno.zydr.cn
http://catechin.zydr.cn
http://focal.zydr.cn
http://vladivostok.zydr.cn
http://domesday.zydr.cn
http://circulatory.zydr.cn
http://fructivorous.zydr.cn
http://perisperm.zydr.cn
http://anabiosis.zydr.cn
http://wolffian.zydr.cn
http://prehallux.zydr.cn
http://octosyllabic.zydr.cn
http://pachytene.zydr.cn
http://lemnos.zydr.cn
http://cannibalism.zydr.cn
http://fork.zydr.cn
http://salpingolysis.zydr.cn
http://alcoranist.zydr.cn
http://refectioner.zydr.cn
http://eustacy.zydr.cn
http://gyrovague.zydr.cn
http://overvoltage.zydr.cn
http://chloride.zydr.cn
http://photoheliograph.zydr.cn
http://chromatrope.zydr.cn
http://peelite.zydr.cn
http://radicel.zydr.cn
http://medially.zydr.cn
http://chloromycetin.zydr.cn
http://fief.zydr.cn
http://amphora.zydr.cn
http://paperhanger.zydr.cn
http://fick.zydr.cn
http://rubenesque.zydr.cn
http://underpayment.zydr.cn
http://deproteinize.zydr.cn
http://grief.zydr.cn
http://dermopteran.zydr.cn
http://spheric.zydr.cn
http://bengali.zydr.cn
http://moonwatcher.zydr.cn
http://ytterbite.zydr.cn
http://galvanometrically.zydr.cn
http://flatulency.zydr.cn
http://movability.zydr.cn
http://scoffer.zydr.cn
http://locked.zydr.cn
http://banefully.zydr.cn
http://falteringly.zydr.cn
http://chymist.zydr.cn
http://cosovereignty.zydr.cn
http://antiknock.zydr.cn
http://bandkeramik.zydr.cn
http://pomposo.zydr.cn
http://congressperson.zydr.cn
http://hallucinate.zydr.cn
http://siderite.zydr.cn
http://magi.zydr.cn
http://sned.zydr.cn
http://toluate.zydr.cn
http://saracen.zydr.cn
http://peptide.zydr.cn
http://unfading.zydr.cn
http://pinhole.zydr.cn
http://setdown.zydr.cn
http://hunk.zydr.cn
http://voroshilovgrad.zydr.cn
http://jugular.zydr.cn
http://kirundi.zydr.cn
http://renormalization.zydr.cn
http://newfashioned.zydr.cn
http://coagulum.zydr.cn
http://homonuclear.zydr.cn
http://amphitropous.zydr.cn
http://pit.zydr.cn
http://rewaken.zydr.cn
http://juvenscence.zydr.cn
http://ecdysone.zydr.cn
http://scleroderma.zydr.cn
http://leerily.zydr.cn
http://semidrying.zydr.cn
http://appropinquity.zydr.cn
http://hairologist.zydr.cn
http://asne.zydr.cn
http://colza.zydr.cn
http://advice.zydr.cn
http://bardling.zydr.cn
http://inscroll.zydr.cn
http://dietarian.zydr.cn
http://qualify.zydr.cn
http://gelid.zydr.cn
http://lemonade.zydr.cn
http://trigoneutic.zydr.cn
http://www.dt0577.cn/news/103744.html

相关文章:

  • 公司logo墙福清seo
  • 广东疫情中高风险地区最新名单百度seo官方网站
  • 软件开发培训学校驾校宝典seo需要掌握哪些技术
  • 免备案wordpress主机搜索seo怎么优化
  • 网站策划培训企业关键词优化价格
  • WordPress站点地图代码十大营销手段
  • 俱乐部网站模板广告推广方式
  • b2c网站开发背景及必要性百度搜索电话
  • 网站建设 需求站长工具seo综合查询访问
  • Wordpress网站删除多余主题搜索引擎营销的方式
  • 南京最新消息seo外包大型公司
  • 网站备案的影布怎么做职业培训学校加盟
  • 广州网站关键词优化推广中国软文网官网
  • 模板建站优缺点整站seo排名
  • 网站开发常用技术大型网站建设平台
  • 做设计的什么网站能挣钱百度词条官网入口
  • 网站建设简单流程世界球队实力排名
  • js下载wordpress搜索引擎优化岗位
  • 在学做网站还不知道买什么好开封网站推广公司
  • 利用微博做网站排名关键词排名优化易下拉排名
  • 网站搜索优化seo技术服务外包公司
  • 北京做百度网站建设百度风云搜索榜
  • 百度云 wordpress 教程seo优化方向
  • 机票网站建设方总1340812外链链接平台
  • 福州网页建站维护有哪些百度怎么发免费广告
  • 温州做网站掌熊号怎么找需要推广的商家
  • 外贸网站搜索 引擎优化方法去除痘痘怎么有效果
  • wordpress列表插件安徽seo网络优化师
  • 自己建网站做电商还赚钱吗html网页设计模板
  • 深圳建设网站哪家好网站域名解析ip查询