原文:Leetcode练习(Python):第441题:排列硬币:你总共有 n 枚硬币,你需要将它们摆成一个阶梯形状,第 k 行就必须正好有 k 枚硬币。 给定一个数字 n,找出可形成完整阶梯行的总行数。 n 是一个非负整数,并且在32位有符号整型的范围内。

题目: 排列硬币:你总共有 n 枚硬币,你需要将它们摆成一个阶梯形状,第 k 行就必须正好有 k 枚硬币。 给定一个数字 n,找出可形成完整阶梯行的总行数。 n 是一个非负整数,并且在 位有符号整型的范围内。 示例 : n 硬币可排列成以下几行: 因为第三行不完整,所以返回 .示例 : n 硬币可排列成以下几行: 因为第四行不完整,所以返回 . 思路: 较简单。 程序: class Solutio ...

2020-05-30 10:20 0 614 推荐指数:

查看详情

n硬币问题(找假币)

问题描述: 在n外观相同的硬币中,有一是假币,并且已知假币与真币的重量不同,但不知道假币与真币相比较轻还是较重。可以通过一架天平来任意比较两组硬币,设计一个高效的算法来检测这枚假币。 解题思路:     使用减治法的解题思路,将硬币分为3堆,则每堆的硬币数量为 n/3 ,但是这是在 n ...

Fri Dec 11 04:15:00 CST 2015 0 1705
Leetcode练习(Python):第448:找到所有数组中消失的数字给定一个范围在 1 ≤ a[i] ≤ n ( n = 数组大小 ) 的 整型数组,数组中的元素一些出现了两次,另一些只出现一次。

题目: 找到所有数组中消失的数字给定一个范围在 1 ≤ a[i] ≤ n ( n = 数组大小 ) 的 整型数组,数组中的元素一些出现了两次,另一些只出现一次。 给定一个范围在 1 ≤ a[i] ≤ n ( n = 数组大小 ) 的 整型数组,数组中的元素一些出现了两次,另一些只出现一次 ...

Sat May 30 19:06:00 CST 2020 0 793
Leetcode练习(Python):数组类:第64给定一个包含整数的 m x n 网格,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。 说明:每次只能向下或者向右移动一步。

题目: 给定一个包含整数的 m x n 网格,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。 说明:每次只能向下或者向右移动一步。 思路: 本题较简单。 程序: class Solution: def ...

Wed Apr 22 22:22:00 CST 2020 0 813
[经典算法] 八硬币

题目说明: 现有八银币a b c d e f g h,已知其中一是假币,其重量不同于真币,但不知是较轻或较重,如何使用天平以最少的比较次数,决定出哪是假币,并得知假币比真币较轻或较重。 题目解析: 单就求假币的问题是不难,但问题限制使用最少的比较次数,所以我们不能以单纯的回圈比较 ...

Sun Aug 09 19:05:00 CST 2015 0 3108
Leetcode练习(Python):第258:各位相加:给定一个整数 num,反复将各个位上的数字相加,直到结果为一数。

题目: 各位相加:给定一个整数 num,反复将各个位上的数字相加,直到结果为一数。 示例: 输入: 38输出: 2 解释: 各位相加的过程为:3 + 8 = 11, 1 + 1 = 2。 由于 2 是一数,所以返回 2。进阶:你可以不使用循环或者递归,且在 O(1) 时间复杂度内解决 ...

Wed May 27 18:22:00 CST 2020 0 615
有1分,2分,5分,10分四种硬币,每种硬币数量无限,给定n分钱(n<10000),求组合n分钱所需要的最少硬币数?

有1分,2分,5分,10分四种硬币,每种硬币数量无限,给定n分钱(n<10000),求组合n分钱所需要的最少硬币数? 动态规划的典型例题,首先定义dp[n],存放从0-n需要的最小硬币数,v[i]存放硬币的面值,初始化dp[0] = 0,得出状态转移方程dp[i]=min{dp[i-1 ...

Sat Aug 17 01:30:00 CST 2019 0 2166
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM