全排列
谦谦学者
努力学习,如何发亮
展开
-
蓝桥杯:算法基础-马虎的算式
马虎的算式小明是个急性子,上小学的时候经常把老师写在黑板上的题目抄错了。有一次,老师出的题目是:36 x 495 = ?他却给抄成了:396 x 45 = ?但结果却很戏剧性,他的答案竟然是对的!!因为 36 * 495 = 396 * 45 = 17820类似这样的巧合情况可能还有很多,比如:27 * 594 = 297 * 54假设 a b c d e 代表1~9不同的5个数字(注意是各不相同的数字,且不含0)能满足形如: ab * cde = adb * ce 这样的算式一共有多少种呢原创 2020-07-28 20:10:06 · 407 阅读 · 0 评论 -
蓝桥杯:算法基础-组素数
组素数素数就是不能再进行等分的数。比如:2 3 5 7 11 等。9 = 3 * 3 说明它可以3等分,因而不是素数。我们国家在1949年建国。如果只给你 1 9 4 9 这4个数字卡片,可以随意摆放它们的先后顺序(但卡片不能倒着摆放啊,我们不是在脑筋急转弯!),那么,你能组成多少个4位的素数呢?比如:1949,4919 都符合要求。分析:通过全排列的方式筛选素数-考虑重复数据的出现这里用set集合存储import java.util.HashSet;import java.util.Se原创 2020-07-28 20:04:18 · 306 阅读 · 0 评论 -
蓝桥杯:算法提升-纸牌三角形
纸牌三角形A,2,3,4,5,6,7,8,9 共9张纸牌排成一个正三角形(A按1计算)。要求每个边的和相等。 下图就是一种排法(如有对齐问题,参看p1.png)。 A 9 6 4 8 3 7 5 2 这样的排法可能会有很多。 如果考虑旋转、镜像后相同的算同一种,一共有多少种不同的排法呢?分析:此类题我首先想到使用暴力破解(也就是每个数字都写一个循环嵌套在一起)和递归(递归逻辑复杂不易理解)下面我把暴力破解的代码发在了下面。public c原创 2020-06-14 15:45:07 · 159 阅读 · 0 评论