zoukankan      html  css  js  c++  java
  • Sum

     

    Sum

    时间限制:1000 ms  |  内存限制:65535 KB
    难度:2
     
    描述
    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 input consists N test cases.
    The only line of every test cases contains a positive integer S (0< S <= 100000) which represents the sum to be obtained.
    A zero terminate the input.
    The number of test cases is less than 100000.
    输出
    The output will contain the minimum number N for which the sum S can be obtained.
    样例输入
    3
    12
    0
    样例输出
    2
    7
     

    #include<math.h>
    #include<cstdio>

    int main()
    {
      int n,i,j;

      while(scanf("%d",&n))
      {
         if(n==0)
       break;
         for(i=(int)sqrt(2*n)-1;  ; i++)

          if((i*(i+1)/2-n)%2==0 && i*(i+1)/2-n>=0 )
        goto loop;
     
         loop: printf("%d\n",i);
      }
      return 0;
    }

  • 相关阅读:
    HTML5学习记录
    CSS学习记录
    HTML扩展(thead,tbody,tfoot标签的使用)
    测删除功能
    jmeter-连接数据库
    jmeter-正则表达式提取器
    jmeter常用函数
    java基础(二)
    git基本使用
    波特的钻石模型
  • 原文地址:https://www.cnblogs.com/hpuwangjunling/p/2389289.html
Copyright © 2011-2022 走看看