找回密码
 欢迎注册
查看: 101376|回复: 37

[擂台] 差三角

[复制链接]
发表于 2013-4-9 12:15:37 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?欢迎注册

×
仔细观察下面的数字组成的三角形:
精华
  1. 3
  2. 1 4
  3. 5 6 2
复制代码
看出什么特征吗?首先,它包含了1~6的连续整数。 重要的是:每个数字都是其下方相邻的两个数字的差(当然是大数减去小数) 满足这样特征的三角形,称为:差三角。找出1~15的整数组成的一个更大的差三角
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2013-4-9 15:08:01 | 显示全部楼层
  1. 2
  2. 5 3
  3. 6 1 4
  4. 3
  5. 5 2
  6. 1 6 4
复制代码
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2013-4-9 15:15:37 | 显示全部楼层
  1. 4
  2. 5 1
  3. 2 7 6
  4. 8 10 3 9
复制代码
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2013-4-9 19:37:39 | 显示全部楼层
3# hujunhua 除了穷举,不知道有没有好的构造法?
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2013-4-10 19:57:32 | 显示全部楼层
1~6还有一解(穷举的结果)
  1. 1
  2. 4 3
  3. 6 2 5
复制代码
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2013-4-10 20:09:53 | 显示全部楼层
1~10穷举,只有4解。
  1. 3
  2. 5 2
  3. 4 9 7
  4. 6 10 1 8
  5. 3
  6. 7 4
  7. 2 9 5
  8. 8 10 1 6
  9. 4
  10. 5 1
  11. 2 7 6
  12. 8 10 3 9
  13. 4
  14. 6 2
  15. 1 7 5
  16. 9 10 3 8
复制代码
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2013-4-11 00:57:42 | 显示全部楼层
1-15,两组解 {{5}, {9, 4}, {2, 11, 7}, {10, 12, 1, 8}, {13, 3, 15, 14, 6}} {{5}, {4, 9}, {7, 11, 2}, {8, 1, 12, 10}, {6, 14, 15, 3, 13}}

评分

参与人数 1鲜花 +2 收起 理由
hujunhua + 2 两解镜像对称,视同一个。

查看全部评分

毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2013-4-11 17:37:14 | 显示全部楼层
1-15,穷举法
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. int main(int argc, char *argv[])
  4. {
  5. int a,b,c,d,e;
  6. int n=5;
  7. int k=n*(n+1)/2;
  8. for(a=1;a<=k;a++)
  9. for(b=1;b<=k;b++)
  10. for(c=1;c<=k;c++)
  11. for(d=1;d<=k;d++)
  12. for(e=1;e<=k;e++)
  13. {
  14. int x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11,x12,x13,x14,x15;
  15. x1 = a; x2 = b; x3 = c; x4 = d; x5 = e; x6 = abs(-a + b); x7 = abs(-b + c); x8 = abs(-c + d); x9 = abs(-d + e); x10 = abs(-abs(-a + b) + abs(-b + c)); x11 = abs(-abs(-b + c) + abs(-c + d)); x12 = abs(-abs(-c + d) + abs(-d + e)); x13 = abs(-abs(-abs(-a + b) + abs(-b + c)) + abs(-abs(-b + c) + abs(-c + d))); x14 = abs(-abs(-abs(-b + c) + abs(-c + d)) + abs(-abs(-c + d) + abs(-d + e))); x15 = abs(-abs(-abs(-abs(-a + b) + abs(-b + c)) + abs(-abs(-b + c) + abs(-c + d))) + abs(-abs(-abs(-b + c) + abs(-c + d)) + abs(-abs(-c + d) + abs(-d + e))));
  16. if(x10!=x1&&x11!=x1&&x11!=x10&&x12!=x1&&x12!=x10&&x12!=x11&&x13!=x1&&x13!=x10&&x13!=x11&&x13!=x12&&x14!=x1&&x14!=x10&&x14!=x11&&x14!=x12&&x14!=x13&&x15!=x1&&x15!=x10&&x15!=x11&&x15!=x12&&x15!=x13&&x15!=x14&&x2!=x1&&x2!=x10&&x2!=x11&&x2!=x12&&x2!=x13&&x2!=x14&&x2!=x15&&x3!=x1&&x3!=x10&&x3!=x11&&x3!=x12&&x3!=x13&&x3!=x14&&x3!=x15&&x3!=x2&&x4!=x1&&x4!=x10&&x4!=x11&&x4!=x12&&x4!=x13&&x4!=x14&&x4!=x15&&x4!=x2&&x4!=x3&&x5!=x1&&x5!=x10&&x5!=x11&&x5!=x12&&x5!=x13&&x5!=x14&&x5!=x15&&x5!=x2&&x5!=x3&&x5!=x4&&x6!=x1&&x6!=x10&&x6!=x11&&x6!=x12&&x6!=x13&&x6!=x14&&x6!=x15&&x6!=x2&&x6!=x3&&x6!=x4&&x6!=x5&&x7!=x1&&x7!=x10&&x7!=x11&&x7!=x12&&x7!=x13&&x7!=x14&&x7!=x15&&x7!=x2&&x7!=x3&&x7!=x4&&x7!=x5&&x7!=x6&&x8!=x1&&x8!=x10&&x8!=x11&&x8!=x12&&x8!=x13&&x8!=x14&&x8!=x15&&x8!=x2&&x8!=x3&&x8!=x4&&x8!=x5&&x8!=x6&&x8!=x7&&x9!=x1&&x9!=x10&&x9!=x11&&x9!=x12&&x9!=x13&&x9!=x14&&x9!=x15&&x9!=x2&&x9!=x3&&x9!=x4&&x9!=x5&&x9!=x6&&x9!=x7&&x9!=x8)
  17. if(x1>0&&x2>0&&x3>0&&x4>0&&x5>0&&x6>0&&x7>0&&x8>0&&x9>0&&x10>0&&x11>0&&x12>0&&x13>0&&x14>0&&x15>0)
  18. printf("%d %d %d %d %d %d %d %d %d %d %d %d %d %d %d \n",x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11,x12,x13,x14,x15 );
  19. }
  20. return 0;
  21. }
复制代码
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2013-4-11 18:36:27 | 显示全部楼层
  1. f[x_List]:=Abs@Differences@x; (*定义一个函数,计算表x的差分绝对值*)
  2. Do[y=Reverse@ FixedPointList[f, x];If[Union @@y==Range[15], Print/@y], {x, Permutations[Range[15],{5}]}]
复制代码
输出结果,居然是唯一解。
  1. {}
  2. {}
  3. {5}
  4. {4,9}
  5. {7,11,2}
  6. {8,1,12,10}
  7. {6,14,15,3,13}
  8. {}
  9. {}
  10. {5}
  11. {9,4}
  12. {2,11,7}
  13. {10,12,1,8}
  14. {13,3,15,14,6}
复制代码
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2013-4-11 18:42:10 | 显示全部楼层
将上述程序略作修改,穷举1~21,无解。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

小黑屋|手机版|数学研发网 ( 苏ICP备07505100号 )

GMT+8, 2025-2-22 16:43 , Processed in 0.038879 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表