`
leiwuluan
  • 浏览: 707350 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类

1到35之间的7个数相加能等于100的算法能有几个 那7个数不能重复 ;

    博客分类:
  • java
阅读更多

1到35之间的7个数相加能等于100的算法能有几个  那7个数不能重复 ;

 

 

(2009-05-22 00:20:29)   ┣ Fierce ┫
for(int i1=1;i1<=35-6;i1++){
   for(int i2=i1+1;i2<=35-5;i2++){
    for(int i3=i2+1;i3<=35-4;i3++){
     for(int i4=i3+1;i4<=35-3;i4++){
      for(int i5=i4+1;i5<=35-2;i5++){
       for(int i6=i5+1;i6<=35-1;i6++){
        for(int i7=i6+1;i7<=35;i7++){
         if(i1+i2+i3+i4+i5+i6+i7==100){
          System.out.println(i1+" "+i2+" "+i3+" "+i4+" "+i5+" "+i6+" "+i7+" ");
         }
        }
       }
      }
     }
    }
   }
  }
 

有更好的方法吗?

请看完贴的你。帮帮

分享到:
评论
5 楼 chirking 2009-06-17  
令f(x,y)表示x个数相加能等于y,返回x个不同数字的字符串
显然要求的是f(7,100)
f(x,y)=f(x-1,y-n)+n
注意n的取值范围。

动态规划
4 楼 DraculaW 2009-05-22  
-@-
最简单的写法
求7个数相加为100
首先 最小的那个必须小于100/7
算一个n
然后再来就是六个数相加必须为(100-n)
算出一个m大于 n小于 (100-n)/6

动态规划
3 楼 leiwuluan 2009-05-22  
DraculaW 写道
你就不优化一下?

不知怎么用。你能写写吗?你能实现一吗。?
2 楼 DraculaW 2009-05-22  
你就不优化一下?
1 楼 JohnnyJian 2009-05-22  
递归会吗?深优会吗?回溯会吗?

相关推荐

    自然数拆分成任意个自然数相加算法

    编写一个程序。要求将一个自然数拆分成任意个自然数相加,要求这几个数的乘积是最大的 自然数n拆分成m个自然数,要求这几个数的乘积是最大的,必为n/m及其临近数.

    一个数分成几个连续整数和

    标题中的“一个数分成几个连续整数和”指的是在数学领域中的一种问题类型,它涉及到将一个给定的正整数表示为若干个连续整数的和。这种问题在算法设计、数学竞赛以及数据分析中都有可能出现。连续整数和的问题通常...

    蓝点被必做的算法经典题java.c/c++

    - **目标**: 使用数字1、2、2、3、4、5打印出所有不同的排列,限制“4”不能在第三位,“3”与“5”不能相邻。 - **程序分析**: - 使用递归方法生成所有可能的排列。 - 在递归过程中加入限制条件,避免生成不符合...

    Java面试经典算法

    有 1、2、3、4 个数字,能组成多少个互不相同且无重复数字的三位数? 12. 奖金问题:该题目考查了算法设计和实现能力。企业发放的奖金根据利润提成,可以利用数轴来分界,定位。 13. 完全平方数问题:该题目考查了...

    php通过排列组合实现1到9数字相加都等于20的方法

    在PHP编程中,有时候我们需要解决一些数学问题,例如如何通过排列组合找出所有可能的方式,使得1到9的数字相加等于20。这个任务涉及到排列和组合的概念,以及递归或循环的算法设计。在给定的代码示例中,提供了一个...

    二年级数学上册 1.1几个相同的数相加导学案1 青岛版 学案.doc

    在小学数学教学中,"几个相同的数相加" 是二年级学生需要掌握的基础知识点之一,青岛版教材以导学案的方式,特别安排了相关的教学内容。通过1.1课时的学习,学生将能够运用乘法这一数学工具,提高处理重复加法运算的...

    计算N以内的和相加等于n的方法的总数

    在编程领域,我们经常遇到各种数学问题,其中计算一定范围内数的组合相加等于特定值的问题是一个经典题目。这个问题在动态规划和递归算法中有着广泛的应用。标题中提到的"计算N以内的和相加等于n的方法的总数"就是一...

    ACM超级经典算法大集合

    它由n个不同大小的盘子按照从大到小的顺序叠放在柱子A上,要求将所有盘子按照同样的规则移动到柱子C上,且在移动过程中有以下限制:任何时候只能移动一个盘子,且大盘子始终不能放在小盘子上面。 解题的关键在于...

    c语言 单链表 两个多项式 相加。

    在实际编程中,我们需要考虑一些特殊情况,比如一个多项式比另一个多项式多出几个项,或者有些项的系数可能为0。此外,由于指数是从大到小排序的,所以遍历时应从链表的尾部开始,这样可以避免频繁地调整链表结构。 ...

    sha1加密算法

    在进一步改进此实现时,可以考虑以下几个方面: - **错误处理**:添加适当的错误检查代码,确保输入数据的有效性和处理过程的完整性。 - **性能优化**:通过使用SIMD指令集(如SSE或AVX)或并行计算(例如OpenMP)...

    java编程练习题

    - 使用循环遍历100到999之间的每一个数。 - 分解每一位数字。 - 计算各位数字的立方和。 - 检查立方和是否等于原数。 #### 知识点5:正整数分解质因数 - **定义**:将一个正整数表示为若干个质数相乘的形式。 -...

    26道基础算法题.pdf

    **问题描述**:有n个人围成一圈,从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位。 **解题思路**: - 使用循环队列模拟报数过程。 - 每次删除报数为3的人,直至圈中仅剩...

    c语言经典算法100例

    - 在每次循环中检查当前生成的三位数是否满足数字不重复的条件。 - **程序逻辑**: - 外层循环控制百位数字。 - 中间层循环控制十位数字。 - 内层循环控制个位数字。 - 通过`if`语句确保生成的三位数中的每个...

    python实现n个数中选出m个数的方法

    标题中的“python实现n个数中选出m个数的方法”是指在Python编程环境中,如何从一个包含n个元素的集合中选择出m个元素的所有可能组合。这个问题在计算机科学和算法设计中通常被称为组合问题,它涉及到组合数学和回溯...

    JAVA算法40 题练习

    12. 数字排列:数字排列是指有 1、2、3、4 个数字,能组成多少个互不相同且无重复数字的三位数? 13. 奖金计算:奖金计算是指根据利润提成,计算应发放奖金总数。 14. 完全平方数判断:完全平方数是指一个整数,它...

    ACM 算法模板大全

    扩展GCD算法不仅可以求出两个数的最大公约数,还能找到这两个数的贝祖等式解。 **模线性方程A*X=B(%N)** 模线性方程是指形如A*X≡B(mod N)的方程,求解这类方程需要考虑模数N的影响。 **模线性方程组** 模线性...

    (完整word版)C语言经典算法100例.doc

    在这个程序中,我们需要计算1、2、3、4这四个数字能组成的无重复数字的三位数的总数。算法的核心在于穷举所有可能的组合,并且确保每个组合中的三个数字互不相同。这个问题涉及到简单的数学组合逻辑,通过三层嵌套...

    计算机编程算法

    2. **递归情况**:如果有多个盘子,先将最上面n-1个盘子借助C柱子移动到B柱子上;然后将剩下的那个最大的盘子从A柱子直接移动到C柱子;最后将B柱子上的n-1个盘子借助A柱子移动到C柱子上。 **算法实现**: ```c void...

Global site tag (gtag.js) - Google Analytics