google的一道JAVA面试题

时间:2021-03-13 19:56:44 综合指导 我要投稿

google的一道JAVA面试题

  java代码:

google的一道JAVA面试题

  Consider a function which, for a given whole number n, returns the number of ones required when writing out all numbers between 0 and n.

  For example, f(13)=6. Notice that f(1)=1. What is the next largest n such that f(n)=n?

  翻译过来大体是这样:

  有一个整数n,写一个函数f(n),返回0到n之间出现的`"1"的个数。比如f(13)=6,现在f(1)=1,问下一个最大的f(n)=n的n是什么?

  答案一:

  int getCountOfNumber(int number){

  int count=0;

  int length=("" + number).length();

  for(int i=0;i<=length;i++){

  int num=number%10;

  number=(number-num)/10;

  if(num*num==1) count++;

  }

  return count;

  }

  计算到:199981 用了203

  不过只计算到上边的数值就没多大意思,国rfPlx.wf提gJ1?o

  `?育qB%p2P{,

  rL网TxtUSd垠,&zV%T1Mr中XYTgJ!看看这个:

  这个是4000000000以内的结果!:

  f(0) = 0

  f(1) = 1

  f(199981) = 199981

  f(199982) = 199982

  f(199983) = 199983

  f(199984) = 199984

  f(199985) = 199985

  f(199986) = 199986

  f(199987) = 199987

  f(199988) = 199988

  f(199989) = 199989

  f(199990) = 199990

  f(200000) = 200000

  f(200001) = 200001

  f(1599981) = 1599981

  f(1599982) = 1599982

  f(1599983) = 1599983

  f(1599984) = 1599984

  f(1599985) = 1599985

  f(1599986) = 1599986

  f(1599987) = 1599987

  f(1599988) = 1599988

  f(1599989) = 1599989

  f(1599990) = 1599990

  f(2600000) = 2600000

  f(2600001) = 2600001

  f(13199998) = 13199998

  f(35000000) = 35000000

  f(35000001) = 35000001

  f(35199981) = 35199981

  f(35199982) = 35199982

  f(35199983) = 35199983

  f(35199984) = 35199984

  f(35199985) = 35199985

  f(35199986) = 35199986

  f(35199987) = 35199987

  f(35199988) = 35199988

  f(35199989) = 35199989

  f(35199990) = 35199990

  f(35200000) = 35200000

  f(35200001) = 35200001

  f(117463825) = 117463825

  f(500000000) = 500000000

  f(500000001) = 500000001

  f(500199981) = 500199981

  f(500199982) = 500199982

  f(500199983) = 500199983

  f(500199984) = 500199984

  f(500199985) = 500199985

  f(500199986) = 500199986

  f(500199987) = 500199987

  f(500199988) = 500199988

  f(500199989) = 500199989

  f(500199990) = 500199990

  f(500200000) = 500200000

  f(500200001) = 500200001

  f(501599981) = 501599981

  f(501599982) = 501599982

  f(501599983) = 501599983

  f(501599984) = 501599984

  f(501599985) = 501599985

  f(501599986) = 501599986

  f(501599987) = 501599987

  f(501599988) = 501599988

  f(501599989) = 501599989

  f(501599990) = 501599990

  f(502600000) = 502600000

  f(502600001) = 502600001

  f(513199998) = 513199998

  f(535000000) = 535000000

  f(535000001) = 535000001

  f(535199981) = 535199981

  f(535199982) = 535199982

  f(535199983) = 535199983

  f(535199984) = 535199984

  f(535199985) = 535199985

  f(535199986) = 535199986

  f(535199987) = 535199987

  f(535199988) = 535199988

  f(535199989) = 535199989

  f(535199990) = 535199990

  f(535200000) = 535200000

  f(535200001) = 535200001

  f(1111111110) = 1111111110

  有人用c写了一个,

  Myl4*Dc,q^9A-中ID

  c教n"gA=无kPZ得出这些结果只用了几十毫秒!


【google的一道JAVA面试题】相关文章:

2017年java中高级笔试面试题及答案07-26

2017年Google的面试流程03-28

苹果公司的面试题03-23

图像处理的笔试面试题08-19

华为硬件面试题08-22

Java找工作经验心得06-27

java面试最常见问题10-27

java招聘面试常见问题10-27

java英文面试笔试题03-19

java面试笔试题分享08-22