找出被修改过的数字
来源:互联网 发布:穿越火线画面优化 编辑:程序博客网 时间:2024/04/26 05:39
n个空间(其中n<1M),存放a到a+n-1的数,位置随机且数字不重复,a为正且未知。现在第一个空间的数被误设置为-1。已经知道被修改的数不是最小的。请找出被修改的数字是多少。
例如:n=6,a=2,原始的串为5, 3, 7, 6, 2, 4。现在被别人修改为-1, 3, 7, 6, 2, 4。现在希望找到5。
例如:n=6,a=2,原始的串为5, 3, 7, 6, 2, 4。现在被别人修改为-1, 3, 7, 6, 2, 4。现在希望找到5。
思路:
由于修改的数不是最小的,所以遍历第二个空间到最后一个空间可以得到a的值。
a 到 a+n-1这 n个数的和是 total = na + (n - 1)n/2。
将第二个至最后一个空间的数累加获得 sub_total。
那么被修改的数就是 total - sub_total。
a 到 a+n-1这 n个数的和是 total = na + (n - 1)n/2。
将第二个至最后一个空间的数累加获得 sub_total。
那么被修改的数就是 total - sub_total。
原文链接:http://hi.baidu.com/mianshiti/blog/item/1faff7035c49161a738b650f.html
- 找出被修改过的数字
- 找出被修改过的数字
- 找出只出现过一次的两个数字
- 找出svn log中修改过的文件
- 找出被删除掉的数字
- 找出丢失的数字
- 找出认不清的数字
- 找出丢失的数字
- 找出丢失的数字 (XOR)
- 找出数列单独的数字
- 28 找出不存在的数字
- 实现输入的四个数字找出最大最小并指出位置信息 动手修改程序3
- 找出只出现过一次的字母
- 找出没有出现过的数
- linux找出最近或者今天被修改的文件
- linux环境下找出今天被修改的文件
- hash---出现过的数字
- 找出4位数的所有吸血鬼数字
- 关于大爆炸的技术贴
- 自定义服务器控件中的事件
- Java与ActionScript类型对应表
- printk 使用方法
- ARMPowerManage
- 找出被修改过的数字
- RSS规范 RSS标准 RSS约定
- 下载编译android kernel
- 实例解析linux内核I2C体系结构(2)
- 腾讯其实不是“狗日的”
- 芳烃装置资料一
- VC实现对Excel的操作
- 基于Ogre引擎的3D WorkSpace
- 实例解析Linux内核I2C体系结构(1)