zoukankan      html  css  js  c++  java
  • NUC1196 Sum【水题+数学题】

    Sum

    时间限制: 1000ms 内存限制: 65536KB

    通过次数: 1总提交次数: 1

    问题描述

    Consider the natural numbers from 1 to N. By associating to each number a sign (+ or -) and calculating the value of this expression we obtain a sum S. The problem is to determine for a given sum S the minimum number N for which we can obtain S by associating signs for all numbers between 1 to N.

    For a given S, find out the minimum value N in order to obtain S according to the conditions of the problem.

    输入描述
    The only line contains in the first line a positive integer S (0 < S ≤ 100000) which represents the sum to be obtained.
    输出描述
    The output will contain the minimum number N for which the sum S can be obtained.
    样例输入
    12
    样例输出
    7
    来源
    PKU
    提示
    The sum 12 can be obtained from at least 7 terms in the following way: 12 = -1+2+3+4+5+6-7.


    问题分析:(略)

    这个问题和《POJ1844 Sum【水题+数学题】》是同一个问题,代码直接用就AC了。

    程序说明:参见参考链接。

    参考链接:POJ1844 Sum【水题+数学题】

    题记:程序做多了,不定哪天遇见似曾相识的。

    AC的C++程序如下:

    /* POJ1844 Sum */
    
    #include <iostream>
    #include <math.h>
    
    using namespace std;
    
    int main()
    {
        int s;
    
        while(cin >> s) {
            for(int i=sqrt(s); ;i++) {
                int sn = (i + 1) * i / 2;
                if(sn >= s && (sn - s) % 2 == 0) {
                    cout << i << endl;
                    break;
                }
            }
        }
    
        return 0;
    }




  • 相关阅读:
    HTML5的自定义属性的使用总结
    yaf
    tp5
    简单易懂的命名空间及use的使用
    惮道安装方法
    centOS 7 gitlab安装
    PHP html mysql js 乱码问题,UTF-8(乱码)
    免费CDN公共库——网站提速 静态资源库
    如何写好接口(php写app移动端接口示例)
    Fiddler
  • 原文地址:https://www.cnblogs.com/tigerisland/p/7563666.html
Copyright © 2011-2022 走看看