描述
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

题意:给定一个数n,在1+2+3+4+…+k中,求随意改变加减号能使其和(差)正好为n的k为多少。
分析:每次累加i:
如果sum小于n则无论如何也不可能达到题意;
如果sum正好等于n则累加到这个k正好为答案;
如果sum大于n时,则需要把前面的加号改为减号:如果改为-1,结果就减2,如果改为-2,结果就减4,以此类推,可以看出只要sum-n为偶数,则此时可以改sum结果为n,得答案。
以下附上代码:

#include<stdio.h>
#include<string.h>
#include<iostream>
#include<algorithm>
#include<stack>
#include<math.h>
using namespace std;
int main()
{int sum;while(~scanf("%d",&sum)&&sum){for(int i=1;i<500;i++){int s=(i*(i+1))/2;if(s==sum){printf("%d\n",i);break;}else if(s>sum&&(s-sum)%2==0){printf("%d\n",i);break;}elsecontinue;}}return 0;
}

南阳oj 215 Sum相关推荐

  1. 南阳oj a+b问题

    #include<iostream> using namespace std; int main () { int a,b; cin>>a>>b; cout< ...

  2. NYOJ 215 Sum

    Sum 时间限制:1000 ms  |  内存限制:65535 KB 难度:2 描述 Consider the natural numbers from 1 to N. By associating ...

  3. LeetCode OJ - Path Sum II

    题目: Given a binary tree and a sum, find all root-to-leaf paths where each path's sum equals the give ...

  4. 南阳OJ独木舟上的旅行

     /*独木舟上的旅行 时间限制:3000 ms  |  内存限制:65535 KB 难度:2 描述 进行一次独木舟的旅行活动,独木舟可以在港口租到,并且之间没有区别. 一条独木舟最多只能乘坐两个人 ...

  5. 南阳oj入门题-蛇形填数

    /** 蛇形填数 时间限制:3000 ms | 内存限制:65535 KB 难度:3 描述 在n*n方陈里填入1,2,...,n*n,要求填成蛇形.例如n=4时方陈为: 10 11 12 1 9 16 ...

  6. 南阳oj 题目722 数独

    数独 时间限制:1000 ms | 内存限制:65535 KB 难度:4 描述 数独是一种运用纸.笔进行演算的逻辑游戏.玩家需要根据9×9盘面上的已知数字,推理出所有剩余空格的数字,并满足每一行.每一 ...

  7. 多人过河问题C语言贪心算法,南阳oj贪心算法之过河问题

    /** 过河问题 时间限制:1000 ms | 内存限制:65535 KB 难度:5 描述 在漆黑的夜里,N位旅行者来到了一座狭窄而且没有护栏的桥边.如果不借助手电筒的话,大家是无论如何也不敢过桥去的 ...

  8. 【ACM】杭电OJ 4704 Sum (隔板原理+组合数求和公式+费马小定理+快速幂)

    http://acm.hdu.edu.cn/showproblem.php?pid=4704 1.隔板原理 1~N有N个元素,每个元素代表一个1.分成K个数,即在(N-1)个空挡里放置(K-1)块隔板 ...

  9. 南阳oj 1的个数

    #include<iostream> #include<math.h> using namespace std; int main () { int t; cin>> ...

  10. 南阳OJ 16 矩形嵌套

    描写叙述 有n个矩形,每个矩形能够用a,b来描写叙述,表示长和宽. 矩形X(a,b)能够嵌套在矩形Y(c,d)中当且仅当a<c,b<d或者b<c,a<d(相当于旋转X90度). ...

最新文章

  1. js数据类型间的互相转换
  2. Asp.net MVC开发RDLC报表
  3. 好程序员大数据独家解析-hadoop五大节点
  4. 【记录】C++中的类成员调用
  5. Termux第一篇之ssh使用
  6. easyui中idField的作用
  7. shell--字符串是否为空
  8. 解决Conda install tensorflow弹窗Python.exe已经停止工作的问题
  9. 台式机dp接口_2K至4K显示器性价比线材选购攻略,毕亚兹 DP高清线入手
  10. 刚刚,Google 官方发布了 2 份编程指南,干货十足!
  11. easyui快速入门
  12. linux 串口驱动解析之2440
  13. Android 深入理解AIL语言与init.rc文件
  14. linux 组建raid0教程,用两块硬盘组建RAID0磁盘阵列简单教程(图文详解)
  15. 计算机信息管理专业 英文,计算机信息管理专业英文简历范文
  16. 华为推出打车平台 Petal,科技大厂再战聚合打车
  17. asp毕业设计—— 基于asp+access的论坛网站设计与实现(毕业论文+程序源码)——论坛网站
  18. 纯前端实现—网页钟表设计
  19. 理光R5445系列 单节锂电池保护芯片,内置驱动器高位Nch FET开关温度保护
  20. 试用与非门和异或门设计一个组合逻辑电路来判断输入的四位二进制数能否被5整除(0可被5整除), 若可被整除则输出F=1, 否则F=0(山东大学二〇二〇年数字电路906综合题第4题)(全网第一手资料)

热门文章

  1. 绕过apple id的那些事
  2. UCOSII 学习笔记(卢有亮视频相关习题)
  3. 论文笔记:TrafficPredict: Trajectory Prediction for Heterogeneous Traffic-Agents
  4. 扩增子分析流程 —— 数据处理(vsearch)
  5. 【数据结构】人名查询哈希表设计(线性探测法)
  6. linux 服务器共享文件客户端查看,在Linux下查看共享文件夹
  7. vmware softice
  8. 怎么缩小gif动图的体积?三步快速压缩gif体积
  9. 怎么查看Win7系统无线网络密码
  10. 用css hack解决IE5 IE5.5 IE6 Firefox浏览器兼容性