数字和为45的六位数有多少个?

数字和为45的六位数有多少个?

一开始的思路

x 1 + x 2 + x 3 + x 4 + x 5 + x 6 = 45 x_1 + x_2 + x_3 + x_4 +x_5 +x_6=45 x1+x2+x3+x4+x5+x6=45

1 ≤ x 1 ≤ 9 1\le x_1 \le 9 1x19
0 ≤ x i ≤ 9 , i = 2 , 3 , 4 , 5 , 6 0\le x_i\le 9,i=2,3,4,5,6 0xi9,i=2,3,4,5,6

  • 我觉得可以容斥原理
  • 设满足

1 ≤ x 1 1\le x_1 1x1
0 ≤ x i , i = 2 , 3 , 4 , 5 , 6 0\le x_i,i=2,3,4,5,6 0xi,i=2,3,4,5,6

  • 的解的个数为 A A A

  • 显然 A = C 44 + 6 − 1 6 − 1 = C 49 5 = 1906884 A=C_{44+6-1}^{6-1}=C_{49}^5=1906884 A=C44+6161=C495=1906884

  • 设满足

x i ≤ 9 , i = 1 , 2 , 3 , 4 , 5 , 6 x_i\le 9,i=1,2,3,4,5,6 xi9,i=1,2,3,4,5,6

  • 的解的个数为 B B B
  • B = C 9 + 6 − 1 6 − 1 = C 14 5 = 2002 B =C_{9+6-1}^{6-1}=C_{14}^5=2002 B=C9+6161=C145=2002

  • 全部的满足是 C 50 5 = 2118760 C_{50}^5=2118760 C505=2118760

  • 答案是209874!


result =0
for i in range(900000):
    number = i+100000
    number = str(number)
    number = list(number)
    sum = 0
    for j in number:
        sum+=int(j)
    if(sum==45):
        result = result+1

    
print (result)

后来的思路

( 9 − x 1 ) + ( 9 − x 2 ) + ( 9 − x 3 ) + ( 9 − x 4 ) + ( 9 − x 5 ) + ( 9 − x 6 ) = 9 (9-x_1) + (9-x_2) + (9-x_3) + (9-x_4) +(9-x_5) +(9-x_6)=9 (9x1)+(9x2)+(9x3)+(9x4)+(9x5)+(9x6)=9

0 ≤ y 1 ≤ 8 0\le y_1 \le 8 0y18
0 ≤ y i ≤ 9 , i = 2 , 3 , 4 , 5 , 6 0\le y_i\le 9,i=2,3,4,5,6 0yi9,i=2,3,4,5,6

  • y 1 = 0 y_1=0 y1=0
    • $$

第三个思路

x 1 + x 2 + x 3 + x 4 + x 5 + x 6 = 45 x_1 + x_2 + x_3 + x_4 +x_5 +x_6=45 x1+x2+x3+x4+x5+x6=45

1 ≤ x 1 ≤ 9 1\le x_1 \le 9 1x19
0 ≤ x i ≤ 9 , i = 2 , 3 , 4 , 5 , 6 0\le x_i\le 9,i=2,3,4,5,6 0xi9,i=2,3,4,5,6

  • x 1 = 1 x_1=1 x1=1

    • x 2 + x 3 + x 4 + x 5 + x 6 = 44 x_2 + x_3 + x_4 +x_5 +x_6=44 x2+x3+x4+x5+x6=44
    • 必须是4个9,1个8
    • 共4个
  • x 1 = 2 x_1=2 x1=2

    • x 2 + x 3 + x 4 + x 5 + x 6 = 43 x_2 + x_3 + x_4 +x_5 +x_6=43 x2+x3+x4+x5+x6=43
    • 至少3个9,
      • 3个9,:1个7::4个
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

fgh431

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值