有些四位数如:1234、1004、8994、9939等,它们个位数字之和为5的倍数,求这样的四位数共有多少个?
来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/15 00:00:48
有些四位数如:1234、1004、8994、9939等,它们个位数字之和为5的倍数,求这样的四位数共有多少个?
有些四位数如:1234、1004、8994、9939等,它们个位数字之和为5的倍数,求这样的四位数共有多少个?
有些四位数如:1234、1004、8994、9939等,它们个位数字之和为5的倍数,求这样的四位数共有多少个?
想象一下有4个盒子,分别代表千位百位十位个位.盒里的小球的个数代表该位上的数字.
首先千位必须要有1.
然后我们分别把5个,10 个,15个……35个小球放到4个盒子里,要求是每个盒子最大为9.最多35个球是因为符合要求的4位数最大是9998,它的和是35
(1)先看最简单的情况:35个球.
这个时候只有9998,9989,9899,8999符合要求.即4种
(2)5个球
因为千位必须要有1个,所以实际上是4个球放在4个盒子里.不同的放法代表不同的、各个数位数之和为5的四位数.所以这个放法的种数就是和为5的四位数的个数.此时因为总共只有5个球,不用考虑大于9的情况.4个球放在4个盒子里,用隔板法可得:C(7,3)=35
(3)10个球
这个时候是9个球放在4个盒子里,但是要排除9个球全放在千位的情况(因为这样千位就大于9了:> ).同样用隔板法:C(12,3)-1=219
(4)30个、25个球
这个时候可以反过来考虑,把“球的空位”看成球:比如一个位置放了3个球,空位就是6.如此一来空位的不同排列数就是个数.由于要放30个球,这个时候空位总数最大是5,那么30个球的排列数恰好等于5个球的时候,.125.同理可以知道,25个球的情况等于10个球的.219
(5)根据这个对称性,15和20个球的情况也应该是相等的,所以只要算一个然后乘2就行了.
先在千位放一个,然后算14个球放在4个盒子里的放法种数.这个麻烦一点,可以用间接法:用全部排列数减去有某个盒子放10、11、12、13、14个的种数,还要减去千位放10个球的情况.式子为:
C(17,3)-C(4,1)*[C(6,2)+C(5,2)+C(4,2)+3+1]-C(7,2)
减号后面的一长串代表的是:先从4个盒子选出一个盒子放10(11、12……)个球,一共有4种选法,然后4再乘以剩下的球在剩下的盒子里的放法种数.这里不能忘了千位放9个球就犯规了,因为本来千位就有一个.所以第二个减号后面代表的是千位10个球,剩下5个球放在三个盒子里的种数.以上就是全部犯规的放法数.同样用的是隔板法(隔板法万岁!)
最后得 680-4*35-21=519
综上,符合条件的4位数的个数为:4+2*(35+219+519)=1550
应该考虑全了,不知道算得对不对呃
public class Daan{
public static void main(String[] args){
int sum=0;
int a=0;
for(int x=1;x<=9;x++){
for(int y=0;y<=9;y++){
for(int z=0;z<=9;z++){
for(in...
全部展开
public class Daan{
public static void main(String[] args){
int sum=0;
int a=0;
for(int x=1;x<=9;x++){
for(int y=0;y<=9;y++){
for(int z=0;z<=9;z++){
for(int w=0;w<=9;w++){
sum=1000*x+100*y+10*z+w;
if (sum%5==0){
a++;
}
}
}
}
}
System.out.println("这样的数有:"+a+"个!");
}
}
貌似理解错了
public class Daan{
public static void main(String[] args){
int sum=0;
int a=0;
for(int x=1;x<=9;x++){
for(int y=0;y<=9;y++){
for(int z=0;z<=9;z++){
for(int w=0;w<=9;w++){
sum=x+y+z+w;
if (sum%5==0){
a++;
}
}
}
}
}
System.out.println("这样的数有:"+a+"个!");
}
}
答案是 1800个
收起
2000