您的位置:首页 > 其它

搭积木 小明最近喜欢搭数字积木, 一共有10块积木,每个积木上有一个数字,0~9。 搭积木规则: 每个积木放到其它两个积木的上面,并且一定比下面的两个积木数字小。 最后搭成4层的金字塔形,必须用

2020-02-01 22:16 811 查看

搭积木

小明最近喜欢搭数字积木,
一共有10块积木,每个积木上有一个数字,0~9。

搭积木规则:
每个积木放到其它两个积木的上面,并且一定比下面的两个积木数字小。
最后搭成4层的金字塔形,必须用完所有的积木。

下面是两种合格的搭法:

0
1 2
3 4 5
6 7 8 9

0
3 1
7 5 2
9 8 6 4

请你计算这样的搭法一共有多少种?

请填表示总数目的数字。
注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。

package seven;

public class 搭积木 {
static Boolean pd(int a,int b) {
if(b>a)
return false;
else
return true;

}
public static void main(String[] args) {
int l=0;
for(int a=0;a<=9;a++) {
for(int b=0;b<=9;b++) {
if(b==a&&a<b)	continue;
if(pd(a,b))continue;
for(int c=0;c<=9;c++) {
if(c==a||c==b)	continue;
if(pd(a,c))	continue;
for(int d=0;d<=9;d++) {
if(d==a||d==b||d==c)	continue;
if(pd(b,d))	continue;
for(int e=0;e<=9;e++) {
if(e==a||e==b||e==c||e==d)	continue;
if(pd(b,e))	continue;
if(pd(c,e))continue;
for(int f=0;f<=9;f++) {
if(f==a||f==b||f==c||f==d||f==e)	continue;
if(pd(c,f))	continue;
for(int g=0;g<=9;g++) {
if(g==a||g==b||g==c||g==d||g==e||g==f)	continue;
if(pd(d,g))	continue;
for(int h=0;h<=9;h++) {
if(h==a||h==b||h==c||h==d||h==e||h==f||h==g)	continue;
if(pd(d,h))	continue;
if(pd(e,h))continue;
for(int i=0;i<=9;i++) {
if(i==a||i==b||i==c||i==d||i==e||i==f||i==g||i==h)	continue;
if(pd(e,i))	continue;
for(int j=0;j<=9;j++) {
if(j==a||j==b||j==c||j==d||j==e||j==f||j==g||j==h||j==i)	continue;
if(pd(f,i))	continue;
if(pd(f,j))continue;
l++;

}}}}}}}}}}
System.out.println(l);
}}
  • 点赞
  • 收藏
  • 分享
  • 文章举报
小白阿龙 发布了37 篇原创文章 · 获赞 0 · 访问量 3668 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐