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

黄骅港属于哪个市安卓优化大师手机版下载

黄骅港属于哪个市,安卓优化大师手机版下载,易烊千玺个人网站,兼职做效果图的网站有哪些在数论,对正整数n,欧拉函数是小于或等于n的正整数中与n互质的数的数目(不包括1) 题目 思路 有三个点比较特殊(因为一来这三个点一定可见,同时也无法用gcd 1判断):(0&am…

在数论,对正整数n,欧拉函数是小于或等于n的正整数中与n互质的数的数目(不包括1)

题目

在这里插入图片描述

思路

  • 有三个点比较特殊(因为一来这三个点一定可见,同时也无法用gcd == 1判断):(0,1)、(1,0)、(1,1)
  • 对于其他点,我们发现只要 g c d ( x , y ) = = 1 gcd(x,y) == 1 gcd(x,y)==1,那就可见,有一类特例就是 x = = y x == y x==y(但是也无妨,因为欧拉函数不算1,算自身,我们可以看作不算自身,算1)
  • 我们对称地考虑,考虑 x > y x > y x>y的情况,枚举 x x x,计算欧拉函数的值,累加,最后乘2,注意加上上面的三个特例
  • 如何计算欧拉函数呢?
    • 做法一:就是利用质因数分解,这个比较麻烦,每次使用都要调用计算
    • 做法二:在欧拉筛的过程中,进行计算,分为四类处理
      • 处理 φ ( 1 ) = 1 \varphi(1) = 1 φ(1)=1
      • 处理 φ ( p ) = p − 1 , p i s a p r i m e \varphi(p) = p-1\;,\; p \;is \;a \;prime φ(p)=p1,pisaprime
      • 处理 φ ( z ∗ p ) = φ ( z ) ⋅ p , z m o d p = = 0 \varphi(z*p) = \varphi(z) \cdot p\;,\; z \mod p == 0 φ(zp)=φ(z)p,zmodp==0
        • φ ( z ∗ p ) \varphi(z*p) φ(zp) 起手的 n n n φ ( z ) \varphi(z) φ(z)多了 p
      • 处理 φ ( z ∗ p ) = φ ( z ) ⋅ ( p − 1 ) , z m o d p ≠ 0 \varphi(z*p) = \varphi(z) \cdot (p-1)\;,\; z \mod p \neq0 φ(zp)=φ(z)(p1),zmodp=0
        • φ ( z ∗ p ) \varphi(z*p) φ(zp) 起手的 n n n φ ( z ) \varphi(z) φ(z)多了 p,同时还要考虑一个新的质因数 p p p


代码

质因数分解版

#include <bits/stdc++.h>
using namespace std;
const int N = 1010;
int get_phi(int n)
{int ans = n;for(int i = 2; i*i <= n; i++){if(n % i == 0){ans = ans * (i-1) / i;while(n % i == 0) n /= i;}}if(n > 1) ans = ans * (n-1) / n;return ans;
}int main()
{int t;cin >> t;int cnt = 0;while(t--){int n;cin >> n;int res = 3;for(int x = 2; x <= n; x++){res += 2*get_phi(x);}cout << ++cnt << ' ' << n << ' ' << res << '\n';}return 0;
}

欧拉筛版

#include <bits/stdc++.h>
using namespace std;
const int N = 1010;
int primes[N], idx;
bool st[N];
int phi[N];
void get_primes(int n)
{phi[1] = 1;for(int i = 2; i <= n; i++){if(!st[i]){primes[++idx] = i;phi[i] = i-1;}for(int j = 1; primes[j]*i <= n; j++){st[primes[j]*i] = true;if(i % primes[j] == 0){phi[primes[j]*i] = phi[i] * primes[j];break;}phi[primes[j]*i] = phi[i] * (primes[j] - 1);}}
}
int main()
{get_primes(1000);int t;cin >> t;int cnt = 0;while(t--){int n;cin >> n;int res = 3;for(int x = 2; x <= n; x++){res += 2*phi[x];}cout << ++cnt << ' ' << n << ' ' << res << '\n';}return 0;
}
http://www.ds6.com.cn/news/65379.html

相关文章:

  • 为拟建设的网站申请一个域名网搜网
  • 做门户网站需要什么条件信息流优化师简历怎么写
  • 郑州网站建设网络公司chatgpt 链接
  • 名校长工作室网站建设seo搜索引擎优化名词解释
  • 网站建设的费用计入免费个人网站申请
  • 企业网站 .net网站多少钱
  • 莱芜金点子电子版招聘seo代码优化有哪些方法
  • 网站建设服务天软科技考研培训机构排名前五的机构
  • 用php做电子商务网站杭州网站提升排名
  • 搏彩网站开发建设宁波免费seo排名优化
  • 酒店设计网站推荐专业拓客团队怎么收费
  • 网站建设怎么建设网络营销应用方式
  • 培训制作网站seo公司优化方案
  • 网站定制解决方案长沙seo研究中心
  • 校园网站设计代码怎么下载百度
  • 佛山网站建设企业推荐参考消息网国内新闻
  • 做网站的公司武汉网络推广广告公司
  • nba最新排名榜西部网站优化的方法与技巧
  • 最专业的手机网站建设seo百度网站排名软件
  • 福建微网站建设公司海外推广专员
  • 响应式网站排名如何免费行情网站的推荐理由
  • 安徽网站优化建设重庆百度seo整站优化
  • 上海网站建设系统婚恋网站排名前10
  • 建设企业外贸网站营销广告
  • 网站镜像怎么做沧州网站推广优化
  • 广宁网站建设安徽百度关键词优化
  • 阜新百姓网免费发布信息网络推广优化方案
  • 代码做网站常用单词网络软文写作
  • 手机网站带后台源代码怎么创建网站链接
  • wordpress页面没有英文seo实战派