摘要: 算24 给出4个小于10个正整数,你可以使用加减乘除4种运算以及括号把这4个数连接起来得到一个表达式。现在的问题是,是否存在一种方式使得得到得表达式得结果等于24。 这里加减乘除以及括号的运算结果和运算的优先级跟我们平常的定义一致。 输入 输入数据包括多行,每行给出一组测试数据,包括4个小于10个正 阅读全文
posted @ 2020-03-02 21:50 Desire-Driver 阅读(314) 评论(0) 推荐(0)
摘要: 例题:放苹果 把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分发?5,1,1和1,5,1是同一种分发。 输入 第一行是测试数据的数目t(0<=t<=20)。以下每行均包含二个整数M和N,以空格分开。1<=M,N<=10. 输出 对输入的每组数据M和N,用一行输出相应的 阅读全文
posted @ 2020-02-29 19:56 Desire-Driver 阅读(223) 评论(0) 推荐(0)
摘要: 用递归将问题分解为规模更小的子问题进行求解 爬楼梯 树老师爬楼梯,他可以每次走1级或者2级,输入楼梯的级数,求不同的走法数。 例如:楼梯一共有3级,他可以每次都走一级,或者第一次走一级,第二次走两级,也可以第一次走两级,第二次走一级,一共3中方法。 输入 输入包括若干行,每行包含一个正整数N,代表楼 阅读全文
posted @ 2020-02-29 13:56 Desire-Driver 阅读(194) 评论(1) 推荐(0)
摘要: 表达式由 项+或者-项 组成 项由 因子*或者/因子 组成 可以连加连减或者连连城连除 因子由 左括号 表达式 右括号组成 #include<iostream> #include<cstring> #include<cstdlib> using namespace std; int factor_v 阅读全文
posted @ 2020-02-20 18:31 Desire-Driver 阅读(246) 评论(0) 推荐(0)
摘要: 用递归解决递归形式的问题 逆波兰表达式 逆波兰表达式是一种把运算符前置的算数表达式,例如普通的表达式2+3的逆波兰表示法为+2 3.逆波兰表达式的优点是运算符之间不必有优先级关系,也不必用括号改变运算次序,例如(2+3)*3的逆波兰表示法为*+234.本题求解逆波兰表达式的值,其中运算符包括+-*/ 阅读全文
posted @ 2020-02-17 18:24 Desire-Driver 阅读(201) 评论(0) 推荐(0)
摘要: N皇后 输入一个正整数N,则程序输出N皇后问题的全部摆法。输出结构里的每一行都代表一种摆法。行里的第i个数字如果是n,就代表第i行的皇后应该放在第n列。 皇后的行,列编号都是从1开始算 #include<iostream> #include<cmath> using namespace std; i 阅读全文
posted @ 2020-02-17 14:26 Desire-Driver 阅读(185) 评论(0) 推荐(0)
摘要: 古代有一个梵塔,塔内有三个座A,B,C。A座上有64个盘子,盘子大小不等,大的在下,小的在上(如图)。有一个和尚想把这64个盘子从A座移到C座,但每次只能允许移动一个盘子,并且在移动过程中,3个座上的盘子始终保持大盘在下,小盘在上。在移动过程中可以利用B座,要求输出移动的步骤。 基本思路:把问题分解 阅读全文
posted @ 2020-02-16 16:44 Desire-Driver 阅读(126) 评论(0) 推荐(0)
摘要: #include<bits/stdc++.h>using namespace std;char oriLights[5]; //存下一个矩阵的状态char lights[5]; //存下变化的灯的矩阵char result[5]; //存下结果 int GetBit(char c,int i){re 阅读全文
posted @ 2020-01-31 00:34 Desire-Driver 阅读(205) 评论(0) 推荐(0)