class Solution {
public:
int reachNumber(int target) {
// 理解这题的意思 这题就好做了
// 分析 首先考虑一种比较极端的情况 即一直向正方向移动n步 ,刚好达到target
// 那么target的值就等于前n步的和 ,也就是1+2+.....+n = n*(n+1)/2
// 如果n(n+1)/2>target ,那么所需要的步数肯定要比n多,而且肯定有向左走的步子,也就是求和的时候肯定是有负数的,至于哪个或者哪些个为负,下面开始讨论
//1,n(n+1)/2 - target 为偶数时,所以要想到达 target 需要向左走 n(n+1)/2 - target 偶数步 ,
// 就是把前n项中第( n(n+1)/2 - target)/2 步变为负号就行了
//当n(n+1)/2 - target 为奇数时,就要分类讨论了,若n为奇数n+1就是偶数 无论向左还是向右 都不会产生一个奇数的差来因此需要再走一步故要n+2步
//若n为偶数,n+1则为奇数,可以产生一个奇数的差,故要n+1步
if(target<) return reachNumber(-target) ;
int i= ;
while(i*(i+) < *target )
{
i++;
} if(i*(i+)/ == target) return i ;
else
{
if((i*(i+)/-target)% == ) return i;
else
{
if(i%==) return i+ ;
else return i+ ;
}
} }
};

leetcode754的更多相关文章

  1. [Swift]LeetCode754. 到达终点数字 | Reach a Number

    You are standing at position 0 on an infinite number line. There is a goal at position target. On ea ...

随机推荐

  1. Html页面Dom对象之Document

    Document 对象 每个载入浏览器的 HTML 文档都会成为 Document 对象. Document 对象使我们可以从脚本中对 HTML 页面中的所有元素进行访问. 提示:Document 对 ...

  2. ubuntu 安装php 报错解决

    安装php时候遇到的问题: dpkg: 处理软件包 php7.1-opcache (--configure)时出错: 依赖关系问题 - 仍未被配置dpkg: 依赖关系问题使得 php7.1-readl ...

  3. MySQL Disk--NAND Flash原理

    ====================================================== NAND Flash最小存储单元: 写数据操作: 通过对控制闸(Control Gate) ...

  4. STL版本号简单介绍

    说明:本文仅供学习交流.转载请标明出处.欢迎转载! 本文的參考文献为:<STL源代码剖析>侯捷        (1)HP STL:全部STL的祖先版本号,由C++之父Alexander S ...

  5. opencart安装和使用PHPMailer

    一.安装PHPMailer 1)先给opencart项目安装vqmod 下载最新版本: http://code.google.com/p/vqmod (目前最新版本是vqmod-2.5.1-stand ...

  6. MQ中间件选型

    如果Java项目,数据量不大,用ActiveMQ,相对简单.支持JMS. 如果对性能.可靠性有一定要求,用RabbitMQ. 如果对性能有很高要求,甚至可牺牲一些可靠性,选kakfa. 在当前大数据时 ...

  7. 【转】每天一个linux命令(17):whereis 命令

    原文网址:http://www.cnblogs.com/peida/archive/2012/11/09/2761928.html whereis命令只能用于程序名的搜索,而且只搜索二进制文件(参数- ...

  8. ORACLE设置密码无过期

    适用于ORACLE11G //获取用户所属的profile SELECT username,PROFILE FROM dba_users;//查看profile的密码有效期 默认是180天SELECT ...

  9. 嵌入式QT应用的窗口大小、位置,QtreeStack的样式

    1.    窗口固定大小 :this->setFixedSize(452,244); 2.窗口固定位置(经试验,触摸屏的鼠标事件不能有效使用) oldPos.setX((800-452)/2); ...

  10. jQuery如何取得HiddenField值(转)

    <f:HiddenField runat="server" ID="cat_id" Text="ssss"/> var strD ...