Relatives POJ - 2407

题目链接:https://vjudge.net/problem/POJ-2407#author=0

题目:

给定n是一个正整数,有多少正整数小于n是n的相对素数? 如果没有整数x> 1,y> 0,z> 0使得a = xy且b = xz,则两个整数a和b是相对素数。
输入
     有几个测试用例。 对于每个测试用例,标准输入包含n <= 1,000,000,000的行。 在最后一种情况下,包含0的行。
产量
     对于每个测试用例,应该有单行输出来回答上面提出的问题。
样本输入

7
    12
    0

样本输出

6
    4

思路:一开始打表做发现不行,数据范围太大,会超内存,RE,只能单个求

//
// Created by hanyu on 2019/8/9.
//
#include <algorithm>
#include <iostream>
#include <cstdio>
#include <cstring>
#include <queue>
#include <set>
#include<math.h>
#include<map>
using namespace std;
typedef long long ll;
const int maxn=3e6+7;
#define MAX 0x3f3f3f3f
ll value(ll n)
{ll result=n;for(int i=2;i*i<=n;i++){if(n%i==0){result=result/i*(i-1);while(n%i==0)n/=i;}}if(n>1)result=result/n*(n-1);return result;
}
int main()
{ll n;while(~scanf("%lld",&n)&&n){printf("%lld\n",value(n));}return 0;
}

转载于:https://www.cnblogs.com/Vampire6/p/11328908.html

Relatives POJ - 2407(不打表的欧拉函数 单求)相关推荐

  1. 欧拉函数:求小于等于n且与n互质的数的个数

    求小于等于n且与n互质的数的个数 互质穷举法 互质:两个数互质代表两者最大公约数为1 最大公约数求法:辗转相除法,最小公倍数:较大值除以最大公约数乘以较小值 辗转相除法: 较大的数a取模较小的数b,得 ...

  2. poj 3090 amp;amp; poj 2478(法雷级数,欧拉函数)

    http://poj.org/problem?id=3090 法雷级数 法雷级数的递推公式非常easy:f[1] = 2; f[i] = f[i-1]+phi[i]. 该题是法雷级数的变形吧,答案是2 ...

  3. UVa 10820 (打表、欧拉函数) Send a Table

    题意: 题目背景略去,将这道题很容易转化为,给出n求,n以内的有序数对(x, y)互素的对数. 分析: 问题还可以继续转化. 根据对称性,我们可以假设x<y,当x=y时,满足条件的只有(1, 1 ...

  4. POJ - 1284 Primitive Roots(原根+欧拉函数)

    题目链接:点击查看 题目大意:给出一个模数 p ,求 p 有多少个原根 题目分析:算是补充了一个知识点吧,模数 p 的原根个数为 p[ p[ n ] ] ,p 为欧拉函数 证明博客:https://b ...

  5. POJ - 2480 Longge's problem(欧拉函数+唯一分解定理)

    题目链接:点击查看 题目大意:给出一个n,求 题目分析:因为N到了二的三十二次方,所以直接暴力肯定会T,这里介绍两种方法,都可以做实现这个题目 首先我们需要转化一下这个题目,先说一下优化过后的暴力枚举 ...

  6. 欧拉函数(求与n互质的数的个数)

    求解与n(1-n-1)互质的质因子的个数 解析:(转) 定义:对于正整数n,φ(n)是小于或等于n的正整数中,与n互质的数的数目. 例如:φ(8)=4,因为1,3,5,7均和8互质. 性质:1.若p是 ...

  7. 欧拉线性筛法求素数(顺便实现欧拉函数的求值)

    标签:欧拉筛法   素数   欧拉函数   phi 我们先来看一下最经典的埃拉特斯特尼筛法.时间复杂度为O(n loglog n) int ans[MAXN]; void Prime(int n) { ...

  8. 欧拉函数+欧拉定理+拓展欧拉定理(欧拉降幂)

    目录 欧拉函数 欧拉定理 拓展欧拉定理(欧拉降幂) 欧拉函数 在数论中,有正整数n,欧拉函数是小于n的正整数中与n互质的数的数目. 它的通式如下: φ(n)=n*(1-1/p1)*(1-1/p2)*( ...

  9. 【数学知识】三种方法求 [1,n] 中所有数欧拉函数(线性筛欧拉函数优化至 O(n) )

    整理的算法模板合集: ACM模板 ①直接求小于或等于n,且与n互质的数个数(求[1,n]中所有数的欧拉函数时间复杂度:O(nn)O(n\sqrt{n})O(nn​)) ②求[1,n]之间每个数的质因数 ...

最新文章

  1. recyclerview滑动到顶部和底部监听+上滑下滑监听
  2. 图论--LCA--Tarjan(离线)
  3. clover引导mbr安装黑苹果_安装黑苹果记录(一)
  4. java继承序列化_java中序列化之子类继承父类序列化
  5. linux脚本多个条件比较大小,shell脚本-比较两个整数大小
  6. java 混淆编译_贴一段自动编译java,并混淆编译的代码
  7. OpenCV-Python教程(10、直方图均衡化)
  8. 拼多多如何拉到足够的人去砍价,砍成一台iPhone12需要多少人?
  9. phpstudy mysql局域网访问_phpstudy 局域网访问
  10. 匹配数字、大小写字母、汉字、-、_而且不能以_开头或结尾
  11. Adobe Flash Player已不再受支持 解决方案
  12. JavaScript 验证码制作
  13. 如何利用小红书进行产品营销?小红书营销技巧有哪些?
  14. iOS设置icon图标和启动页的详细设置
  15. png 微软ppt 透明度_挖到一个宝藏级的PPT素材网站,哭着五星好评,免费又实用...
  16. 【编程题】【Scratch一级】2021.06 打篮球
  17. 【Matlab】在Matlab中输入希腊字母
  18. vba 选中所有区域 但是不包括首行
  19. 【云周刊】第167期:如何将深度学习应用在广告、推荐及搜索业务?阿里妈妈实践案例解读!...
  20. php 计算一年多少周,每周的起止日期

热门文章

  1. 古代的碎银子是怎么来的?
  2. 你是怎么看待那些拿几千块钱炒股的人?
  3. 基金定投十年不止赢不止损会怎么样?
  4. 社区团购的终局是不是团长被抛弃?
  5. 传统行业生意,现在想要发财
  6. 拿了股权的员工能不干活吗?
  7. 3类兼职渠道,赚钱的方法来了
  8. 聪明女人的七个致富之道,学会它你也能成为人人羡慕的小富婆
  9. 人跟人的格局真的是不一样的
  10. 几行代码轻松搞定跨系统传递 traceId