zoukankan      html  css  js  c++  java
  • 庞果网之高斯公式

    【题目】

    题目详情

    高斯在上小学时发明了等差数列求和公式:1+2+..+100=5050。如今问题在于给你一个正整数n,问你他能够表示为多少种连续正整数之和?(自身也算)。

    输入格式:

    多组数据,每组数据一行,一个正整数n。 0<n<2000000000

    输出格式:

    每组数据一行,包括一个正整数,表示结果。


    答题说明

    输入例子

    5

    120

    输出例子:

    2

    4

    解释:

    5=2+3=5

    120=1+2+...+15=22+23+24+25+26=39+40+41=120


    【分析】

    详细详见:点击打开链接

    【代码】

    /*********************************
    *   日期:2014-04-26
    *   作者:SJF0115
    *   题目: 高斯公式
    *   来源:http://hero.csdn.net/Question/Details?ID=537&ExamID=532
    *   结果:AC
    *   来源:庞果网
    *   总结:
    **********************************/
    #include <iostream>
    #include <stdio.h>
    using namespace std;
    
    int main(){
        int n,i;
        while(scanf("%d",&n) != EOF){
            int small = 1;
            int big = 2;
            int mid = (1 + n) / 2;
            int count = 0;
            int cur = small + big;
            while(small < mid){
                //cur = n
                if(cur == n){
                    count ++;
                }
                //cur > n
                while(cur > n && small < mid){
                    cur -= small;
                    small ++;
                    if(cur == n){
                        count++;
                    }
                }//while
                //cur < n
                big ++;
                cur += big;
            }//while
            printf("%d
    ",count+1);
        }
        return 0;
    }
    


  • 相关阅读:
    Linux用户配置sudo权限(visudo)
    Memcached 实战
    安装完centos7 root目录下的文件anaconda-ks.cfg
    通过命令查看centos机器公网ip
    .env修改后不生效
    laravel事务回滚失败
    windows10 PHP7 Sqlserver 扩展
    PHP生成html格式数据字典
    服务器初始化脚本
    PHP导出Excel表格实例
  • 原文地址:https://www.cnblogs.com/hrhguanli/p/3776231.html
Copyright © 2011-2022 走看看