
algorithm
老马厩
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
第四届蓝桥杯省赛B组 带分数(Java)
题目描述 100可以表示为带分数的形式:100=3+69258/714 还可以表示为:100=82+3546/197 注意特征:带分数中,数字 1∼9分别出现且只出现一次(不包含 0)。 类似这样的带分数,100 有 11 种表示法。 输入格式 一个正整数。 输出格式 输出输入数字用数码 1-9 不重复不遗漏地组成带分数表示的全部种数。 数据范围 1≤N<106 输入样例1: 100 输出样例1: 11 输入样例2: 105 输出样例2: 6 解题思路 这道题仔细观察会是全排列的思路,题目中的原创 2020-07-14 16:45:37 · 326 阅读 · 0 评论 -
第四届蓝桥杯省赛B组 翻硬币 (Java)
题目描述 小明正在玩一个“翻硬币”的游戏。 桌上放着排成一排的若干硬币。我们用 * 表示正面,用 o 表示反面(是小写字母,不是零)。 比如,可能情形是:**oo***oooo 如果同时翻转左边的两个硬币,则变为:oooo***oooo 现在小明的问题是:如果已知了初始状态和要达到的目标状态,每次只能同时翻转相邻的两个硬币,那么对特定的局面,最少要翻动多少次呢? 我们约定:把翻动相邻的两个硬币叫做一步操作。 输入格式 两行等长的字符串,分别表示初始状态和要达到的目标状态。 输出格式 一个整数,表示最小操作步原创 2020-07-07 22:17:13 · 293 阅读 · 0 评论 -
LeetCode60.第k个排列(Java)
题目描述 给出集合 [1,2,3,…,*n*],其所有元素共有 n! 种排列。 按大小顺序列出所有排列情况,并一一标记,当 n = 3 时, 所有排列如下: 1. `"123"` 2. `"132"` 3. `"213"` 4. `"231"` 5. `"312"` 6. `"321"` 给定 n 和 k,返回第 k 个排列。 说明: 给定n的范围是[1,9]. 给定k的范围是[1,n!]. 解题思路 这道题明显考察的是全排列,但是用递归暴力找出所有排序是比较不好写的,因为要返回字符串String,原创 2020-07-06 21:58:27 · 283 阅读 · 0 评论