zoukankan      html  css  js  c++  java
  • Reflect

    Reflect

    Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)
    Total Submission(s): 288    Accepted Submission(s): 174


    Problem Description
    We send a light from one point on a mirror material circle,it reflects N times and return the original point firstly.Your task is calcuate the number of schemes.


     
    Input
    First line contains a single integer T(T10) which denotes the number of test cases.

    For each test case, there is an positive integer N(N106).
     
    Output
    For each case, output the answer.
     
    Sample Input
    14
     
    Sample Output
    4
     





    白痴互质求法:
    #pragma comment(linker, "/STACK:1024000000,1024000000")
    #include <iostream>
    #include <stdio.h>
    #include <math.h>
    #include <string>
    #include <queue>
    #include <string.h>
    #include <map>
    #include <set>
    #include <vector>
    #include <algorithm>
    #include <stdlib.h>
    using namespace std;
    #define eps 1e-8
    #define INF 20000000005
    #define rd(x) scanf("%d",&x)
    #define rdLL(x) scanf("%I64d",&x)
    #define rd2(x,y) scanf("%d%d",&x,&y)
    #define ll long long
    #define mod 998244353
    #define maxn 100005
    #define maxm 1000
    #define minn 0.00000001;
    
    bool judge(int a,int b){
       int temp=0;
        while(b!=0){
            temp=b;
            b=a%b;
            a=temp;
        }
        if(a==1) return 1;//如果最大公约数是1,那么两数互质
        else return 0;
    }
    
    int main()
    {
        int Case,n;
        rd(Case);
        while(Case--){
            rd(n);
            int coun = 1;
            for(int i=2 ; i<n+1 ; i++)
                if( judge(i,n+1) )
                    coun++;
            printf("%d
    ",coun);
        }
        return 0;
    }
    




    欧拉函数:(两种方式)
    #pragma comment(linker, "/STACK:1024000000,1024000000")
    #include <iostream>
    #include <stdio.h>
    #include <math.h>
    #include <string>
    #include <queue>
    #include <string.h>
    #include <map>
    #include <set>
    #include <vector>
    #include <algorithm>
    #include <stdlib.h>
    using namespace std;
    #define eps 1e-8
    #define INF 20000000005
    #define rd(x) scanf("%d",&x)
    #define rdLL(x) scanf("%I64d",&x)
    #define rd2(x,y) scanf("%d%d",&x,&y)
    #define ll long long
    #define mod 998244353
    #define MAX 1000005
    #define maxm 1000
    #define minn 0.00000001;
    
    ///但个数的的欧拉函数
    //long long eular(long long n){
    //  long long ans = n;
    //  for(int i=2 ; i*i <= n ; i++){
    //     if(n%i == 0){
    //        ans = ans - ans/i;  ///欧拉函数
    //        while(n%i == 0)
    //            n = n/i;
    //     }
    //  }
    //  if( n>1 ) ans=ans-ans/n;
    //  return ans;
    //}
    
    ///筛法欧拉函数(打表)
    int eular [MAX];
    void getEular(){
       memset(eular,0,sizeof(eular));
       eular[1] = 1;
       for(int i=2;i<=MAX;i++){
        if(!eular[i])
          for(int j=i;j<=MAX ; j += i){
            if(!eular[j]) eular[j] = j;
            eular[j] = eular[j]/i*(i-1);
          }
       }
    }
    
    int main()
    {
        int Case,n;
        getEular();
        rd(Case);
        while(Case--){
            rd(n);
            printf("%d
    ",eular[n+1]);
            //printf("%lld
    ",eular(n+1));
        }
        return 0;
    }
    



  • 相关阅读:
    Ajax实践学习笔记(三) Ajax应用模型
    代码之美
    Git 和Github初次使用 (转) Anny
    VisitsPageViewUnique Visitors: Metrics From GA Anny
    Building and Installing Node.js Anny
    Callback in NodeJS Anny
    Intall Apache & php on Ubuntu Anny
    [转载]Linux系统下超强远程同步备份工具Rsync使用详解 Anny
    Cannot Boot WEBrick: "WARN TCPServer Error: Address already in use " Anny
    chmod(转) Anny
  • 原文地址:https://www.cnblogs.com/zswbky/p/5431922.html
Copyright © 2011-2022 走看看