| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1497 人关注过本帖
标题:计算差三角
取消只看楼主 加入收藏
i_code
Rank: 2
等 级:论坛游民
帖 子:19
专家分:15
注 册:2013-5-2
结帖率:75%
收藏
已结贴  问题点数:20 回复次数:5 
计算差三角
标题:计算差三角

仔细观察下面的数字组成的三角形:

    3
   1 4
  5 6 2

看出什么特征吗?
首先,它包含了1~6的连续整数。
重要的是:每个数字都是其下方相邻的两个数字的差(当然是大数减去小数)
满足这样特征的三角形,称为:差三角。

你的任务是找出1~15的整数组成的一个更大的差三角。其形如:

      ?
     4 ?
    ? ? ?
   * ? ? ?
  ? ? ? ? ?

其中,只给出了一个确定的数字:4
请确定出“*” 代表的是哪个一个数字。

直接提交该数字,不要提交多余的内容。
搜索更多相关主题的帖子: 数字 三角形 
2013-05-02 23:17
i_code
Rank: 2
等 级:论坛游民
帖 子:19
专家分:15
注 册:2013-5-2
收藏
得分:0 
回复 2楼 beyondyf
能写一下代码吗?求指教,谢谢!
2013-05-03 16:35
i_code
Rank: 2
等 级:论坛游民
帖 子:19
专家分:15
注 册:2013-5-2
收藏
得分:0 
回复 8楼 zhu_zhi
存在的,有两组结果:

    5
   4 9
  7 11 2
 8 1 12 10
6 14 15 3 13
   
    5
   9 4
  2 11 7
 10 12 1 8
13 3 15 14 6
2013-05-03 21:44
i_code
Rank: 2
等 级:论坛游民
帖 子:19
专家分:15
注 册:2013-5-2
收藏
得分:0 
回复 6楼 beyondyf
感谢!
2013-05-04 15:41
i_code
Rank: 2
等 级:论坛游民
帖 子:19
专家分:15
注 册:2013-5-2
收藏
得分:0 
回复 13楼 beyondyf
#include<stdio.h>
#include<math.h>
int main()
{
 int a1;
 int b1,b2;
 int c1,c2,c3;
 int d1,d2,d3,d4;
 int e1,e2,e3,e4,e5;
 for(e1=1;e1<=15;e1++)
    for(e2=1;e2<=15;e2++)
    {
     if(e2==e1)
        continue;
     for(e3=1;e3<=15;e3++)
     {
      if(e3==e2||e3==e1)
         continue;
      for(e4=1;e4<=15;e4++)
      {
       if(e4==e3||e4==e2||e4==e1)
          continue;
       for(e5=1;e5<=15;e5++)
       {
        if(e5==e4||e5==e3||e5==e2||e5==e1)
            continue;
        d1=abs(e1-e2);
        if(d1!=e1&&d1!=e2&&d1!=e3&&d1!=e4&&d1!=e5)
        {
         d2=abs(e2-e3);
         if(d2!=d1&&d2!=e1&&d2!=e2&&d2!=e3&&d2!=e4&&d2!=e5)
         {
          d3=abs(e3-e4);
          if(d3!=d2&&d3!=d1&&d3!=e1&&d3!=e2&&d3!=e3&&d3!=e4&&d3!=e5)
          {
           d4=abs(e4-e5);
           if(d4!=d3&&d4!=d2&&d4!=d1&&d4!=e1&&d4!=e2&&d4!=e3&&d4!=e4&&d4!=e5)
           {
            c1=abs(d1-d2);
            if(c1!=d1&&c1!=d2&&c1!=d3&&c1!=d4&&c1!=e1&&c1!=e2&&c1!=e3&&c1!=e4&&c1!=e5)
            {
             c2=abs(d2-d3);
             if(c2!=c1&&c2!=d1&&c2!=d2&&c2!=d3&&c2!=d4&&c2!=e1&&c2!=e2&&c2!=e3&&c2!=e4&&c2!=e5)
             {
              c3=abs(d3-d4);
              if(c3!=c2&&c3!=c1&&c3!=d1&&c3!=d2&&c3!=d3&&c3!=d4&&c3!=e1&&c3!=e2&&c3!=e3&&c3!=e4&&c3!=e5)
              {
               b1=abs(c1-c2);
               if(b1!=c1&&b1!=c2&&b1!=c3&&b1!=d1&&b1!=d2&&b1!=d3&&b1!=d4&&b1!=e1&&b1!=e2&&b1!=e3&&b1!=e4&&b1!=e5)
               {
                b2=abs(c2-c3);
                if(b2!=b1&&b2!=c1&&b2!=c2&&b2!=c3&&b2!=d1&&b2!=d2&&b2!=d3&&b2!=d4&&b2!=e1&&b2!=e2&&b2!=e3&&b2!=e4&&b2!=e5)
                {
                 a1=abs(b1-b2);
                 if(a1!=b1&&a1!=b2&&a1!=c1&&a1!=c2&&a1!=c3&&a1!=d1&&a1!=d2&&a1!=d3&&a1!=d4&&a1!=e1&&a1!=e2&&a1!=e3&&a1!=e4&&a1!=e5)
                 {
                  if(b1==4)
                  {
                   printf("    %d\n",a1);
                   printf("   %d %d\n",b1,b2);
                   printf("  %d %d %d\n",c1,c2,c3);
                   printf(" %d %d %d %d\n",d1,d2,d3,d4);
                   printf("%d %d %d %d %d\n",e1,e2,e3,e4,e5);
                  }
                  
                  

               
               
               
                 }
               
                }



               }


             }
            }
           }

          }

         }

        }

       }
       }

      }


     }


    }


return 0;

}

   这是我的代码,用的是穷举,当然代码比较丑陋。虽然我现在还没看懂你的代码,但感觉写得很有水平,就像你所说的那样构建得比较清楚,还有azzbcc的也是的,也很有水平。我现在大二,个人很喜欢编程,也很想提高自己的能力,能分享一下编程的心得吗?或者谈一下你是怎样学习编程的,还望赐教,谢谢!
2013-05-05 13:54
i_code
Rank: 2
等 级:论坛游民
帖 子:19
专家分:15
注 册:2013-5-2
收藏
得分:0 
回复 17楼 beyondyf
真是大神le! 初中就开始编程,佩服! 以后还望多多指教!
2013-05-06 11:48
快速回复:计算差三角
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.039601 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved