• ural 1049


    题目:http://acm.timus.ru/problem.aspx?space=1&num=1049

    题意:给十个数,假设十个数相乘后所有因子个数为 sum,求的 N = sum % 10;

    忘了是根据什么了,有一个结论:任何一个数都可以写成:M = P1 ^ a1 * P2 ^ a2 * P3 ^ a3 ~~~~~ Pn ^ an;那么 M 的因子个数就是 sum = (a1 + 1) * (a2 + 1) * (a3 + 1) ~~~(an + 1);  ai < 10000,注意随时取余

    View Code
     1 const int N = 10010;
     2 int prime[15010];
     3 int tnum[N];
     4 bool vis[N];
     5 int num;
     6 int ans;
     7 void is_prime()  // 打印素数表
     8 {
     9     int i,j;
    10     for(i = 2; i < N ;i++)
    11     {
    12         if(!vis[i])
    13         {
    14             prime[num ++] = i;
    15             for(j = 1; j * i < N; j++)
    16             {
    17                 if(vis[i * j]) continue;
    18                 vis[i * j] = true;
    19             }
    20         }
    21     }
    22 }
    23 void cal(int n)
    24 {
    25     int i;
    26     for(i = 0; i < num; i++)  // 计算每个素因子的个数
    27     {
    28         if(!n) return ;
    29         if(n % prime[i] == 0)
    30         {
    31             int sum = 0;
    32             while(n % prime[i] == 0)
    33             {
    34                 sum ++;
    35                 n /= prime[i];
    36             }
    37             tnum[prime[i]] += sum;
    38         }
    39     }
    40 }
    41 int main()
    42 {
    43     num = 0;
    44     is_prime();
    45     int n,i;
    46     ans = 1;
    47     _clr(tnum,0);
    48     //freopen("data.txt","r",stdin);
    49     for(i = 0; i < 10; i++)
    50     {
    51         scanf("%d",&n);
    52         if(n == 1) continue;
    53         cal(n);
    54     }
    55     for(i = 0; i < N; i++)
    56     {
    57         if(tnum[i]) 
    58         {
    59             ans *= ((tnum[i] + 1) % 10);  // 随时取余
    60             ans %= 10;
    61         }
    62 
    63     }
    64     printf("%d\n",ans);
    65     return 0;
    66 }
  • 相关阅读:
    About learn《The C programming Language,Second Edition》
    Reproduction CVE_2019_0708
    Hello universe!
    WebSessionStore: Could not obtain reference to HttpContext
    oracle 触发器
    IE11,用Forms身份验证保存不了Cookie
    水晶报表
    SAP记账期间变式
    SAP会计年度变式
    SAP OB52会计年度变式
  • 原文地址:https://www.cnblogs.com/fxh19911107/p/2678455.html
Copyright © 2020-2023  润新知