`
zhaohuafei
  • 浏览: 27048 次
文章分类
社区版块
存档分类
最新评论

找出1到19之中数的和为20的所有组合

 
阅读更多

可以分拆成多个函数来做,每个函数计算一种长度的组合。两位数字相加时,只能是1-9之间的数,加上10-19之间的数。以此类推。

package test;


public class Sum20 {
	public static void main(String[] args) {
		sum2num();
		System.out.println("----------------");
		sum3num();
		System.out.println("----------------");
		sum4num();
		System.out.println("----------------");
		sum5num();
	}
	public static void sum2num(){
		for(int i=1;i<10;i++)
			for(int j=10;j<20;j++)
				if(i+j == 20)
					System.out.println(i+"+"+j+"="+20);
	}
	public static void sum3num(){
		for(int i=1;i<6;i++)
			for(int j=i+1;j<10;j++)
				for(int k=j+1;k<18;k++)
					if(i+j+k == 20)
						System.out.println(i+"+"+j+"+" + k+"="+20);
	}
	public static void sum4num(){
		for(int i=1;i<4;i++)
			for(int j=i+1;j<6;j++)
				for(int k=j+1;k<9;k++)
					for(int l=k+1;l<15;l++)
						if(i+j+k+l == 20)
							System.out.println(i+"+"+j+"+" + k+"+" + l+"="+20);
	}
	public static void sum5num(){
		for(int i=1;i<3;i++)
			for(int j=i+1;j<4;j++)
				for(int k=j+1;k<5;k++)
					for(int l=k+1;l<7;l++)
						for(int m=l+1;m<11;m++)
							if(i+j+k+l+m == 20)
								System.out.println(i+"+"+j+"+" + k+"+" + l+"+"+m +"="+20);
	}
}


分享到:
评论

相关推荐

    数模的算法精讲

    题我们最直观的想法就是遍历整个图找出所有的 Hamilton 回路再进行 比较、寻优。对于一个具有 n 个顶点的对称完全图而言要从 2)!1(− n 个 可能的解中找出最小解需要进行 12)!1(−− n 次比较。如果我们使用每...

    练习P20入门版答案

    16. 试编程找出能被各位数字之和整除的一切两位数。 17. 一个正整数的个位数字是6,如果把个位数字移到首位,所得到的数是原数的4倍,试编程找出满足条件的最小正整数。 18. 某本书的页码从1开始,小明算了算,总共...

    算法分析与设计习题集答案

    36、 (组合问题)求出从自然数1,2,…,n中任取r个数的所有组合。 37、 传教士与野人渡河问题。有M个传教士和M个野人准备渡河,船一次最多载2人,任何时刻野人数不能多于传教士数,但允许全部为野人。编写算法给出...

    LINGO软件的学习

    外层是主框架窗口,包含了所有菜单命令和工具条,其它所有的窗口将被包含在主窗口之下。在主窗口内的标题为LINGO Model – LINGO1的窗口是LINGO的默认模型窗口,建立的模型都都要在该窗口内编码实现。下面举两个例子...

    C 程序指导书及实践指导

    如果为了找出程序中积压分支中的错误,应该使用什么样的数据对程序进行测试?请上机验证自己的结论。 (3)用哪两组数据就可以把判定框中的每个条件运算都进行一次?如果为了测试出判定条件中的错误,应使用哪些数据...

    易语言程序免安装版下载

    修改外部数据库在“表中记录数为零”时可能导致程序崩溃的BUG。 10. 修改扩展界面支持库一,修改“超级列表框.取标题()”不能返回长度大于256的包含汉字的文本。 11. 修改扩展界面支持库一,为“超级列表框.查找...

    经典全面的SQL语句大全

     UNION 运算符通过组合其他两个结果表(例如 TABLE1 和 TABLE2)并消去表中任何重复行而派生出一个结果表。当 ALL 随 UNION 一起使用时(即 UNION ALL),不消除重复行。两种情况下,派生表的每一行不是来自 TABLE1...

    正则表达式

    这个特殊的RegExp对象和所有以字母"s"结尾的字符串都匹配.用RegExp()也可以定义 一个等价的正则表达式,代码如下: var pattern = new RegExp("s$"); 无论是用正则表达式直接量还是用构造函数RegExp(),创建一个...

    计算机二级C语言考试题预测

    (13) 设一棵完全二叉树共有699个结点,则在该二叉树中的叶子结点数为(B) 注:利用公式n=n0+n1+n2、n0=n2+1和完全二叉数的特点可求出 A. 349 B. 350 C. 255 D. 351 (14) 结构化程序设计主要强调的是(B) A.程序的规模 ...

    最新JAVA编程题全集_50题及答案

    public static int[] data = { 12, 15, 20, 10, 19, 3, 89, 32, 39, 47, 55 }; // 原始数据 public static int counter = 1; // 计数器 public static int len = data.length; public static void main...

    SQL必知必会(第3版)--详细书签版

    读者将从本书中循序渐进、系统、直接地学到SQL的知识和技巧。  这是本书的第3版,它已经教会了成千上万的读者使用SQL。现在轮到你了,让我们翻到第1章,开始学习吧。你将很快编写出世界级的SQL。  读者对象  本书...

    c语言经典案例

    实例059 求各位数之和为5的数 75 第6章 数据输入与输出函数 77 实例060 使用字符函数输入/输出字符 78 实例061 输出相对的最小整数 79 实例062 将小写字母转换为大写字母 80 实例063 水池注水问题 80 实例064 用*号...

    Linux操作系统基础教程

    2需要为购满许可证付出高价还要受到系统安装数量的限制。我在讲义的最后面附有 GPL 的 非官方中文译稿。目前 Linux 中国的发行版本(Linux Distribution)主要有 Red Hat (红帽子) , Slackware, Caldera, Debian...

    软件测试规范

    条件组合覆盖 .................................................................................................................................... 11 七.测试错误类型 ......................................

    手机行业常用知识(普及)

    手机读取同步信道(SCH)的信息后找出基地站(BTS)的任别码,并同步到超高帖TDMA的帖号上。手机在处理呼叫前读取系统的信息。比如:邻近小区的情况、现在所处小区的使用频率及小区是否可以使用移动系统的国家号码和...

    grub4dos-V0.4.6a-2017-02-04更新

    font --bin --font-high=20 /1_20.dzk 内置字库,如果不是 16*16 字体,头部需声明:DotSize=[font_h]。 受内存限制,当前大字库可支持到 32*32,中文小字库可支持到 40*40. 2.不再支持 vga 图形模式。 2015-07...

    二级C语言公共基础知识

    (28) 一个类可以从直接或间接的祖先中继承所有属性和方法。采用这个方法提高了软件的______。 答:可重用性 (29) 面向对象的模型中,最基本的概念是对象和 ______。 答:类 (30) 软件维护活动包括以下几类:改正性...

    java 面试题 总结

    Session Bean 还可以再细分为 Stateful Session Bean 与 Stateless Session Bean ,这两种的 Session Bean都可以将系统逻辑放在 method之中执行,不同的是 Stateful Session Bean 可以记录呼叫者的状态,因此通常来...

    C#23种设计模式_示例源代码及PDF

    1、 FACTORY —追 MM 少不了请吃饭了, 麦当劳的鸡翅和肯德基的鸡翅都是 MM 爱吃的东西, 虽然口味有所不同, 但不管你带 MM 去麦当劳或肯德基, 只管向服务员说“来四个鸡翅”就行 了。麦当劳和肯德基就是生产鸡翅...

Global site tag (gtag.js) - Google Analytics