首页 > 试题广场 >

0~999999之间的所有数字中,任何一位都不包括数字1的数

[单选题]
0~999999之间的所有数字中,任何一位都不包括数字1的数字总数为多少
  • 99999
  • 262144
  • 381041
  • 524288
  • 531441
  • 900000
999999是6位数字,任何以为都不包括数字1的数字总数可以转化为对6位数字赋值0-9,那么对于从第6位到第1位不为1的赋值情况是:
9 × 9 × 9 × 9 × 9 × 9 = 531441种。
编辑于 2015-04-11 22:23:48 回复(8)
答案:E

发表于 2016-08-02 11:07:46 回复(2)
是排列组合问题,有人担心第一位,或者前几位为0的问题,但是即使为0,也可以代表一个数字,他代表的数字就是除去前面几个0以后组成的数字,所以共有9*9*9*9*9*9=531441
发表于 2015-09-11 12:54:24 回复(0)
其实就是排列的问题,每一位都不取1,而从除1之外的9个数中任取一个构成排列

发表于 2015-08-20 17:12:34 回复(0)
531441  
思路如下:
0-9:  有 9个
10-99:有 8*9个
100-999:有8*9*9
1000-9999:有8*9*9*9
10000-99999:有8*9*9*9*9
100000-999999:有8*9*9*9*9*9
有 9+8*(9+9*9+9*9*9+9*9*9*9+9*9*9*9*9) = 9*9*9*9*9*9 = 431441
发表于 2015-06-06 08:05:57 回复(1)
szq头像 szq
9+8*9+8*9*9+8*9*9*9+8*9*9*9*9+8*9*9*9*9*9
发表于 2015-04-15 08:27:28 回复(3)
1、9^6 如前面答主所言,前置0可行。
2、避免重复,缺漏。
3、故 逐层分类。
发表于 2017-03-31 11:44:57 回复(0)
#include <stdlib.h>
#include <math.h>
#include <vector>
#include <string>
#include <stack>
#include <algorithm>
#include <iostream>
using namespace std;

int main()
{
    long long cot=0;

    for(long long i=0;i<=999999;i++)
    {
        string s=to_string(static_cast<long long>(i));
        if(s.find('1')==s.npos)
            cot++;

    }



    cout<<cot;
    system("pause");
}
编程实现
发表于 2019-08-27 11:41:51 回复(0)
不会
发表于 2018-02-16 22:52:09 回复(0)
我觉得把最后一个"数"字改为"和"字,就有意思了
发表于 2017-09-26 20:26:18 回复(0)
请教一下,0-999999中有多少个1呢?比如111就算三个1,11011就算4个1。
发表于 2017-03-23 20:52:21 回复(1)
算出有1的数有多少个,然后减掉。
1.个位为1时,有000001 -  999991 ,共有100000种;
2.十位为1时,个位不为1,有00001x - 99991x, 共有10000 * 9;
3.百位为1时,个位和十位都不为1,有0001xx - 9991xx ,共有1000 * 9 * 9;
4.千位为1时,个十百为都不为1, 有001xxx - 991xxx,共有100 * 9 * 9 * 9;
5.万位为1时, 个十百千都不为1, 有01xxxx - 91xxxx,共有10 * 9 * 9 * 9 * 9;
6.十万位为1时,其他位都不为1, 有1xxxxx ,共有9^5;
1000000 - (100000 + 90000 + 81000 + 72900 + 81*81 + 9^5) = 531441。
发表于 2016-09-07 11:18:33 回复(0)
直接9的6次方就可以了
发表于 2016-04-20 15:46:39 回复(0)
9(1) 99(10+9*1=19) 999(100+9*19=271) 9999(1000+9*271=3439) 99999(10000+9*3439=40951) 999999(100000+9*40951=468559) 1000000-468559=531441
编辑于 2015-07-25 19:18:32 回复(0)
如果是1位,有9种;
2位数,有8*9=72种;
3位数,有8*9*9=648种;
4位数,有8*9*9*9=5832种;
5位数,有8*9*9*9*9=52488种;
6位数,有8*9*9*9*9*9=472392种;
一共是472392+52488+5832+648+72+9=531441种
发表于 2015-06-05 10:43:13 回复(0)
哎呀,我看成所有不包含1的数字的总和了,没想到是总数啊。
发表于 2015-05-25 18:20:09 回复(3)
排列组合问题
发表于 2015-05-18 17:43:04 回复(0)
9^6.
发表于 2015-04-29 23:06:45 回复(0)
9*9*9*9*9*9
编辑于 2015-04-13 16:54:45 回复(0)
9的6次方 因为是0-999999 排列组合计算
发表于 2015-04-12 13:52:31 回复(0)