• 仪仗队(codevs 2296)


    题目描述 Description

      作为体育委员,C君负责这次运动会仪仗队的训练。仪仗队是由学生组成的N * N的方阵,为了保证队伍在行进中整齐划一,C君会跟在仪仗队的左后方,根据其视线所及的学生人数来判断队伍是否整齐(如下图)。

      现在,C君希望你告诉他队伍整齐时能看到的学生人数。

    输入描述 Input Description

      共一个数N。

    输出描述 Output Description

      共一个数,即C君应看到的学生人数。

    样例输入 Sample Input

    4

    样例输出 Sample Output

    9

    数据范围及提示 Data Size & Hint

    对于 30% 的数据,1≤N≤1000

    对于 100% 的数据,1≤N≤40000

    /*
      对于一个例子,如果我们把符合要求的点找出来,会发现所有点的x-1与y-1互质,且图是对称的,那么我们就可以循环1~n-1,找出小于它们并与它们互质的数,统计个数*2+1,典型的欧拉函数题目。 
    */
    #include<cstdio>
    #include<iostream>
    #define M 40010
    using namespace std;
    int phi[M],n;
    void oula()
    {
        for(int i=1;i<=n;i++)
          phi[i]=i;
        for(int i=2;i<=n;i++)
          if(phi[i]==i)
            for(int j=1;j<=n/i;j++)
              phi[i*j]=phi[i*j]/i*(i-1);
    }
    int main()
    {
        scanf("%d",&n);
        oula();
        int ans=0;
        for(int i=1;i<n;i++)
          ans+=phi[i];
        printf("%d",ans*2+1);
        return 0;
    } 
    View Code
  • 相关阅读:
    【H5】01 入门 & 概述
    【Mybatis + Spring】 Mybatis
    【Mybatis】Bonus01 笔记资料
    【Spring】06 Aop切面功能
    【Spring】05 注解开发
    【Spring】04 注解实现自动装配
    【Spring】03 XML配置
    【Spring】02 过程分析
    【Mybatis】11 注解的使用
    【Mybatis】10 实现分页 & 分页插件
  • 原文地址:https://www.cnblogs.com/harden/p/5807206.html
Copyright © 2020-2023  润新知