0~9随机生成不重复的数字的5个可重复数相加之和个位数为0的组合有多少,用排列组合的方法计算,谢谢

扫二维码下载作业帮
1.75亿学生的选择
下载作业帮安装包
扫二维码下载作业帮
1.75亿学生的选择
四位数由0~9组成,一共有多少种组合?一个四位数由0~9组成,一共 有多少种组合?
扫二维码下载作业帮
1.75亿学生的选择
如果是0001 这样都算的话那就有9999种 如果不算的话那就有9000种 四位数本有9999种,但是减去原有的三位数中的999种 所以就有9000种
为您推荐:
其他类似问题
0不能放首位
1放首位时,百位有10种取法,即可取0.1.2.3.4.5.6.7.8.9中的一个,同样十位、个位也各有10种取法。所以可组成10*10*10=1000个不同的四位数。
同理2.3.4.5.6.7.8.9分别放首位时,也各可组成1000个不同的四位数。
所以总共有9000个不同的四位数。
(9*9*8*7)种 排列组合问题 选为最佳吧
扫描下载二维码从0到9的排列组合
从0到9的排列组合
从0,1,2,3,4,5,6,7,8,9十个数字中任意选择5个数字相加(可以是重复数字,但是每个数字最多重复2次。)其等于的结果数字的尾数(即最后一个数字)是1或4或7(再则是3或6或0或9;再则是2或5或8)的组合分别有多少?具体分别有哪些组合?谢谢劳神!!!!!
举例如下:
尾数4的:0+0+1+1+2; 4+5+6+9+0;8+6+8+5+7; 3+1+9+9+2;............
尾数9的:9+9+2+4+5; 0+1+2+3+3;5+5+6+6+7; 8+4+5+0+2;............
尾数2的:2+2+5+9+4; 5+5+0+0+2; ............................
从0,1,2,3,4,5,6,7,8,9十个数字中任意选择5个数字相加(可以是重复数字,但是每个数字最多重复2次。)相当于从0,1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9二十个数字中任意选择5个数字相加,c(20,5)=15504,从这么多的数组中找出满足题设的数组,有必要吗?
如有,请编程。
请遵守网上公德,勿发布广告信息
相关问答:
A={0,3,6,9}, B={1,4,7},C={2,5,8}
取第一组五个,或取第一组三个后二组各取一个,或取第一组一个后二组各取二个,或取第一组2个第二组3个,或取第一组2个第三组3个 尾数在第一组;
其它可以依照这个想法来分析然后计算。
虽然仍然很复杂(由于允许重复,又不能任意重复)但人工可以计算了。
对不起,错了。好难啊,一个排列组合问题问题是这样的:0-9当中选出5个数,按照一定的奇偶性进行排列组合比如:全偶, 全奇,偶偶偶偶偶,奇奇奇奇奇,奇偶偶偶偶,奇奇偶偶偶,奇奇奇偶偶......这样应该一共有2^5=32种情况对这32种情况下的所有排列组合进行输出,并保存到文件里我用5层循环写了全奇和全偶两种,其它的不会了,现请教各位,该用什么算法,该怎么写。附:我自己写的全奇全偶的代码  C/C++ code   #include &iostream& #include &string& #include &fstream& int main() {
char ou[6] = {'0','2','4','6','8','\0'};
char ji[6] = {'1','3','5','7','9','\0'};
ofstream out(&全偶.txt&);
int cnt = 0;
for (int a=0; a&5; a++)
for (int b=0; b&5; b++)
for (int c=0; c&5; c++)
for (int d=0; d&5; d++)
for (int e=0; e&5; e++)
char temp[6] = {ou[a], ou[b], ou[c], ou[d], ou[e], '\0'};
cout && temp &&
out && temp &&
out.close();
cout && &总数:& && cnt &&
out.open(&全奇.txt&);
for (int a=0; a&5; a++)
for (int b=0; b&5; b++)
for (int c=0; c&5; c++)
for (int d=0; d&5; d++)
for (int e=0; e&5; e++)
char temp[6] = {ji[a], ji[b], ji[c], ji[d], ji[e], '\0'};
cout && temp &&
out && temp &&
out.close();
cout && &总数:& && cnt &&
return 0; }
&对这32种情况下的所有排列组合进行输出,并保存到文件里.&看过你的代码后发现表述有问题:应该是所有排列,而不是排列组合。排列和组合是两个不同的概念。其实这个问题你换个角度看:对于任何的排列如:78456,它必然属于一个奇偶排列(奇偶偶奇偶)。这个问题也就是把判断奇偶排列放入到对应的文件。这个判断的方法可以用决策树。而把遍历只需要一层循环即可。不知道我理解的是否对?
从楼主代码看可以重复,大概没什么难度[code=C/C++][/code]#include&stdio.h&#include &fstream&int main(){ int type[5]={0,1,1,0,0};//代表对应位置奇偶,0为偶数1为奇数 ofstream out(&test.txt&); int cnt =0; for (int i =0;i&100000;i++) {
char szBuffer[32];
sprintf(szBuffer,&%05d&,i);
for (j =0;j&5;j++)
if (szBuffer[j]%2!=type[j])
out $<$szB
out $<<$\n&;
} } out $<$}

我要回帖

更多关于 java产生不重复随机数 的文章

 

随机推荐