- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
Given a string of digits, find the minimum number of additions required for the string to equal some target number. Each addition is the equivalent of inserting a plus sign somewhere into the string of digits. After all plus signs are inserted, evaluate the sum as usual.
For example, consider "303" and a target sum of 6. The best strategy is "3+03".
我会用暴力解决它,如下所示:
for each i in 0 to 9 // i -- number of plus signs to insert
for each combination c of i from 10
for each pos in c // we can just split the string w/o inserting plus signs
insert plus sign in position pos
evaluate the expression
if the expression value == given sum
return i
有意义吗?从性能的角度来看,它是最优的吗?
...
好吧,现在我看到动态规划解决方案会更有效率。然而,如果所提出的解决方案无论如何都有意义,那就很有趣了。
最佳答案
这当然不是最佳选择。例如,如果给定字符串“1234567890”并且目标是一个三位数,您知道必须将字符串至少拆分为四个部分,因此您无需检查 0、1 或 2 插入.此外,目标限制了允许插入位置的范围。这两点对短字符串的影响很小,但对较长的字符串影响很大。但是,我怀疑有更好的方法,有点 DP 的味道。
关于algorithm - 旧顶级编码器谜语 : Making a number by inserting +,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8280649/
我有以下代码: $value){ if($value == 1){ echo "{$key}, "; } } ?> 如您所见,我用 500 个零填充一个数组,遍历它两
一个 friend 给了我一个谜语: #include #define TOTAL_ELEMENTS ((sizeof(array) / sizeof(array[0]))) int array[
这几天,我一直克制自己的硕士学习,一直专注于这个(看似简单的)难题: 这个 10*10 的网格构成了一个包含 100 个可用地点的正方形。目的是从一个角落开始,根据一些简单的“遍历规则”遍历所有地方,
我正在努力解决这个问题MaxMirror在 CodingBat 上: We'll say that a "mirror" section in an array is a group of conti
有一个矩阵M*N。矩阵元素为黑色或白色。我们将相同颜色的相邻元素称为区域。您可以选择任何区域并翻转它的颜色(即改变所有元素的颜色)。给定这样一个矩阵,找到使整个矩阵变成黑色或白色所需的最小翻转次数。
从三个变量开始,都是System.DateTime。 a: 10/2/2009 2:30:00 PM b: 10/2/2009 2:30:00 PM c: 10/2/2009 2:30:00 PM 相
第一部分:从F#调用F# 假设我们在 F# 中定义了以下类型: type MyClass = static member Overload1 (x, y) = "Pim" static
(不,这不是家庭作业,我只是发现了这个错误并认为在这里分享它可能会有用) import java.util.List; public class BubbleSorter { public >
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a softwar
我是一名优秀的程序员,十分优秀!