zoukankan      html  css  js  c++  java
  • hdu1286

    找新朋友

    Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 5174    Accepted Submission(s): 2652

    Problem Description
    新年快到了,“猪头帮协会”准备搞一个聚会,已经知道现有会员N人,把会员从1到N编号,其中会长的号码是N号,凡是和会长是老朋友的,那么该会员的号码肯定和N有大于1的公约数,否则都是新朋友,现在会长想知道究竟有几个新朋友?请你编程序帮会长计算出来。
     
    Input
    第一行是测试数据的组数CN(Case number,1<CN<10000),接着有CN行正整数N(1<n<32768),表示会员人数。
     
    Output
    对于每一个N,输出一行新朋友的人数,这样共有CN行输出。
     
    Sample Input
    2 25608 24027
    Sample Output
    7680 16016
     
     
    1. #include<iostream>
    2. #include<cstdio>
    3. #include<string>
    4. using namespace std;
    5. int x[32768];
    6. int main()
    7. {
    8.     int t,n,i,j,sum;
    9.     while(scanf("%d",&t)!=EOF)
    10.     {
    11.         while(t--)
    12.         {
    13.             scanf("%d",&n);
    14.             sum=0;
    15.             memset(x,0,sizeof(x));
    16.             for(i=2;i<n;i++)
    17.             {
    18.                 if(n%i==0&&x[i]==0)
    19.                 {
    20.                     for(j=i;j<n;j+=i)
    21.                     {
    22.                         x[j]=1;
    23.                     }
    24.                 }
    25.             }
    26.             for(i=1;i<n;i++)
    27.             {
    28.                 if(x[i]==0)
    29.                     sum++;
    30.             }
    31.             printf("%d\n",sum);
    32.         }
    33.     }
    34.     return 0;
    35. }

    在数论,对正整数n,欧拉函数<math>\varphi(n)</math>是少于或等于n的数中与n互质的数的数目。此函数以其首名研究者欧拉命名,它又称为Euler's totient function、φ函数、欧拉商数等。

    例如<math>\varphi(8)=4</math>,因为1,3,5,7均和8互质。

    从欧拉函数引伸出来在环论方面的事实和拉格朗日定理构成了欧拉定理的证明。

    [编辑]φ函数的值

    <math>\varphi(1)=1</math>(唯一和1互质的数就是1本身)。

    若n是质数p的k次幂,<math>\varphi(n)=p^a-p^=(p-1)p^</math>,因为除了p的倍数外,其他数都跟n互质。

    欧拉函数是积性函数——若m,n互质,<math>\varphi(mn)=\varphi(m)\varphi(n)</math>。证明:设A, B, C是跟m, n, mn互质的数的集,据中国剩余定理,<math>A \times B</math>和C可建立一一对应的关系。因此<math>\varphi(n)</math>的值使用算术基本定理便知,

    若<math>n = \prod_{p\mid n} p^{\alpha_p}</math>,

    则<math>\varphi(n) = \prod_{p\mid n} p^{\alpha_p-1}(p-1) = n\prod_{p|n}\left(1-\frac\right)</math>。

    例如<math>\varphi(72)=\varphi(2^3\times3^2)=2^(2-1)\times3^(3-1)=2^2\times1\times3\times2=24</math>

    [编辑]与欧拉定理、费马小定理的关系

    对任何两个互质的正整数a, m,<math>m\ge2</math>,有

    <math>a^{\varphi(m)} \equiv 1 \pmod m</math>

    即欧拉定理

    当m是质数p时,此式则为:

    <math>a^ \equiv 1 \pmod p</math>

    即费马小定理。

     
  • 相关阅读:
    快速导出B站收藏单节目列表
    打包Python程序
    PHP应用日志记录
    这几天折腾win10访问deepin共享的历程
    PHP更新本地公网IP到阿里云域名解析,实现DDNS
    PHP.ini 能不能加载子配置文件 ?
    PHP处理表单数据的一个安全回顾(记录教训)
    不用U盘,用一台好电脑给另一个电脑重装windows10
    方正 ignb路由器设置备份(自用笔记)
    Xiuno BBS 4.0 修改时间显示
  • 原文地址:https://www.cnblogs.com/Deng1185246160/p/2956572.html
Copyright © 2011-2022 走看看