用0、1、2三个数字可以组成很多的自然数,将其从小到大依次排列起来,分别是:0、1、2、10...则2012是其中的第几个数
问题描述:
用0、1、2三个数字可以组成很多的自然数,将其从小到大依次排列起来,分别是:0、1、2、10...则2012是其中的第几个数
答
这些数为:
0
一个
1,2
两个
10,11,12;20,21,22
六个
100,101,102;110,111,112;120,121,122;
200,201,202;210,211,212;220,221,222;
十八个
1000,1001;1002;1010,1011,1012;1020,1021,1022;
1100,1101;1102;1110,1111,1112;1120,1121,1122;
1200,1201;1202;1210,1211,1212,1220,1221,1222;
二十七个
2000,2001,2002,2010,2011,
五个
比2012小的数有1+2+6+18+27+5=59 个,
所以2012排到第60个
解法2:
0000算0,0001算1,
小于2000的,个位,十位,百位,均有三种可能;千位可以选择0或1,有两种可能
所以小于2000的数有2*(3*3*3)=54种情况;
大于等于2000的有5个数如下:
2000,2001,2002,2010,2011,
所以小于2012的有54+5=59个数,2012排在第60位.