博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
面google的试题,对google面试题的衍生推导
阅读量:6348 次
发布时间:2019-06-22

本文共 1463 字,大约阅读时间需要 4 分钟。

hot3.png

(补充,原贴中间有论述错误,需要感谢 @

   对我论述中的一个错误指出。我没有仔细判断 1111 1111 10 之前的收敛和发散特性,199981(10进制,是满足 f(n) = n的,且比 1111 1111 10 小)

昨天看了 这个帖子三遍。首先需要指出,帖子转载的原作者,也没有把题目对应的做出来,当然他的分析是正确的。题目实质是问10进制下,假设给定一个自然数n,用10进制描述所有0到n,包括n的自然数时,出现1的总数为f(n),求,f(n) = n的最大情况。

我比较郁闷的是3点,

1、我自己英语不好。扫一边题目,以为看懂了,但是实际没看懂真正问什么。

2、google神经病,明明是个数论的题目,拐这么个大弯做什么。

3、如果我象google这样小肚鸡肠,以后我面人,假如有机会面老外,也学google一样搞点文言文,折腾点春秋战国时代的故事,把实际数学的问题藏后面,首先得让他们知道,之乎者也的含义。奶奶的,形式主义害死人。

因此,我特地反送给一个面google的试题。并给出答案。

首先,我需要说明,虽然平时也看看数论导论,图论的书,但都是业务爱好。所以数论我研究的并不广泛和深入,因此下面这个证明,我相信,数论方面的专家应该早就证明过了。不是我什么独创。希望这里的数论专家给予指导,也可以笑笑,只是别认为我是在挑战数论猜想。

回到正题,请google的弱智专家证明以下题目

1、定义,任意自然数k,在具体n进制下,可用0..n-1的数进行进制方式描述。则对[0,k]区间内,所有自然数,采用n进制描述中,每个位出现1的总数量,我定义为n进制1符号k区间频率值,简称k区间“1”频率值

2、求证:对于任意N进制(N>1),n区间“1”频率值等于n且n!=1的数是唯一的,且该数值用n进制描述始终为 1...1 0。即0前面存在(n-1)个1。

这个证明,如果具体定义到n为10的时候。自然就可以得出,在10进制下,f(1111 1111 10 )= 1111 1111 10 。且该数值,是满足f(n) = n的最大值。

对应的有,2进制下,f(n) = n,最大值为 0b10。换成10进制为2

对应3进制下,f(n) = n 最大值为 110,换成10进制为 12。

5进制下,f(n)  =n)最大值,为 1111 0,换成10进制为5^4+5^3+5^2+5^1 = 780

 

以上证明我已经证出来了,就是写数学的规范证明,存在大量公式符号,如累加。懒得写文字了。基本思路如下:

1、证明 11...1 0的f(n) = 111.. 10。方法是,对任意位,求出其他位出现1的总数。例如上面帖子中的跟贴,最后再累加。其实这样可以得出如下计算步骤。

假设进制7 。[0,111 111 0] 区间内,第m位为1 时,其他位任意的情况有  111 111个。而第0位为0 时,其他位出现1的总数为111 111,因此如下:

第0位 111 111 个 

。。。

第6位 111 111 个

总计等于 7(10进制) * 111 111(7进制),等于111 111左移一位,也即111 111 0正好和n相同。

第二步,是证明,f(n)是个发散函数。而且会在某个区间的分辨率下,是增函数。而在该区间内,在一个大数N以上,始终会存在 f(n) > n的情况,由此证明上面 111 .. 11 0的值是唯一且是最大的。

转载于:https://my.oschina.net/luckystar/blog/56377

你可能感兴趣的文章
java B2B2C Springcloud多租户电子商城系统 (五)springboot整合 beatlsql
查看>>
Throwable是一个怎样的类?
查看>>
三条代码 搞定 python 生成验证码
查看>>
我的友情链接
查看>>
我的友情链接
查看>>
无线和有线路由哪种性能更好
查看>>
Dwr3.0纯注解(纯Java Code配置)配置与应用浅析三之后端反向调用前端
查看>>
Ubuntu下安装遨游浏览器
查看>>
自定义Linux service脚本
查看>>
微信开发之发红包
查看>>
一键lnmp脚本&&php扩展模块安装(适用于CENTOS6.X系列)
查看>>
二维观察---文字的裁剪
查看>>
矩形覆盖
查看>>
ICMP
查看>>
界面设计模式(第2版)(全彩)
查看>>
解决VMware Workstation错误:未能锁定文件
查看>>
CentOS6 手动编译升级 gcc
查看>>
memcached的安装与开启脚本
查看>>
zabbix 邮件报警 -- sendmail
查看>>
JavaScript异步编程
查看>>