zoukankan      html  css  js  c++  java
  • zoj 2095 Divisor Summation

    Divisor Summation

    Time Limit: 5 Seconds      Memory Limit: 32768 KB

    Give a natural number n (1 <= n <= 500000), please tell the summation of all its proper divisors.

    Definition: A proper divisor of a natural number is the divisor that is strictly less than the number.

    e.g. number 20 has 5 proper divisors: 1, 2, 4, 5, 10, and the divisor summation is: 1 + 2 + 4 + 5 + 10 = 22.

     


    Input

    An integer stating the number of test cases, and that many lines follow each containing one integer between 1 and 500000.


    Output

    One integer each line: the divisor summation of the integer given respectively.


    Sample Input

    3
    2
    10
    20


    Sample Output

    1
    8
    22

     1 #include <iostream>
     2 #include <cstdio>
     3 using namespace std;
     4 int main(){
     5     int n, t, sum;
     6     scanf("%d", &t);
     7     while(t--){
     8         scanf("%d", &n);
     9         if(n == 1){
    10             printf("0
    ");
    11             continue;
    12         }
    13         sum = 1;
    14         for(int i = 2; i * i <= n; i++){
    15             if(n % i == 0){
    16                 if(n / i != i){
    17                     sum += (i + n / i);
    18                 } else {
    19                     sum += i;
    20                 }
    21             }
    22         }
    23         printf("%d
    ", sum);
    24     }
    25     return 0;
    26 }
  • 相关阅读:
    端口以及服务常用cmd
    异步,同步,阻塞,非阻塞,并行,并发,
    mysql启动不起来
    安装nagios出现的错误
    Linux内核优化
    mysql使用常见问题
    mysql日志
    mysql数据库使用脚本实现分库备份过程
    mysqladmin常用用法
    mysql授权
  • 原文地址:https://www.cnblogs.com/qinduanyinghua/p/6536087.html
Copyright © 2011-2022 走看看