zoukankan      html  css  js  c++  java
  • 【BZOJ】【1968】【AHOI2005】COMMON 约数研究

    数论


      原谅我这么傻逼的题都不会做……

      或许写成数学公式的形式比较容易想到解法?

      $$ans=sum_{i=1}^n sum_{d|i} 1$$

      ……是不是感觉很水呀……是吧……改成先枚举d再枚举 i 看看……

      $$ans=sum_{d=1}^n sum_{d|i} 1=sum_{d=1}^n lfloorfrac{n}{d} floor$$

      果然我是个傻逼……

     1 /**************************************************************
     2     Problem: 1968
     3     User: Tunix
     4     Language: C++
     5     Result: Accepted
     6     Time:32 ms
     7     Memory:804 kb
     8 ****************************************************************/
     9  
    10 #include<cstdio>
    11 int main(){
    12     int n,ans=0;
    13     scanf("%d",&n);
    14     for(int i=1;i<=n;i++) ans=ans+n/i;
    15     printf("%d
    ",ans);
    16     return 0;
    17 }
    18 
    View Code

    1968: [Ahoi2005]COMMON 约数研究

    Time Limit: 1 Sec  Memory Limit: 64 MB
    Submit: 1174  Solved: 884
    [Submit][Status][Discuss]

    Description

    Input

    只有一行一个整数 N(0 < N < 1000000)。

    Output

    只有一行输出,为整数M,即f(1)到f(N)的累加和。

    Sample Input

    3

    Sample Output

    5

    HINT

    Source

    [Submit][Status][Discuss]
  • 相关阅读:
    HDU 2883 kebab
    CSUOJ 1635 Restaurant Ratings
    CSUOJ 1638 Continued Fraction
    POJ 1852 Ants
    ZOJ 3471 Most Powerful
    CSUOJ 1637 Yet Satisfiability Again!
    如何生成CA证书
    Keepalived实现双机热备
    Nginx负载均衡的优缺点
    负载均衡之 nginx
  • 原文地址:https://www.cnblogs.com/Tunix/p/4557536.html
Copyright © 2011-2022 走看看