我需要一个算法将一个值列表拆分成这样的块,每个块中的值总和是(近似)等于(它假设背包问题的一些变化)
所以,例如[1,2,1,4,10,3,8] => [[8,2],[10],[1,3,1,4]]
相同长度的块是首选,但它不是约束.
Python是首选语言,但也欢迎其他语言
编辑:定义了块数
python language-agnostic algorithm optimization combinatorics
我正在使用phing并通过ExecTask运行selenium服务器.有时我需要通过终止其进程来停止运行服务器.
是否有可能在ExecTask中产生进程的PID?
如果正确发送邮件,有没有办法用PHPUnit(或者可能是PHP的其他测试框架)进行测试?我必须测试使用PHP函数mail()的代码.使用自定义邮件程序类我可以随时进行模拟,但对于mail()...?也许有一些插件能够使用IMAP并验证是否收到邮件?(如果有可能,它应该与操作系统无关......)
我有一堆phpunit测试,其中一部分使用selenium,我需要知道有没有运行selenium服务器(windows).有没有办法从PHP检查它?
如何在mysql中执行重音敏感但不区分大小写的utf8搜索?Utf8_bin区分大小写,并且utf8_general_ci对重音不敏感.
在PHP中使用名称空间非常棒.将'\'作为命名空间分隔符有点......尴尬(但如果有人认为这很酷且很性感,我会在这篇帖子中添加标签"rant".).
所以,这里提出的问题是:
您是否在代码中使用NAMESPACE_SEPARATOR常量?如下面的代码:
<?php
if (!\defined('NAMESPACE_SEPARATOR') {
\define('NAMESPACE_SEPARATOR', '\\');
} // if
Run Code Online (Sandbox Code Playgroud)
优点:
缺点:
DIRECTORY_SEPARATOR是该值与平台有关,而命名空间分隔符则不是." (如http://bugs.php.net/bug.php?id=43046中所述)有些地方你不能使用它(完全限定类名作为默认类变量),即:
<?php
class A {
protected $sDefaultReporterClass = '\My\Namespace\DefaultReporter';
}
Run Code Online (Sandbox Code Playgroud)所以,你在想什么?
任何人都有想法是否可以销毁/更改在许多地方引用的php对象?unset显然只会破坏一个引用,有时手动跟踪所有引用都不是一个选项.有任何想法吗?也许反思中有一些我缺少的东西?
我有一个mySql查询,它会在datetime字段中添加一定的时间间隔.
UPDATE table T
SET T.ending = DATE_ADD(T.ending, INTERVAL T.hours * 3600 * some_other_variable_factors SECONDS))
Run Code Online (Sandbox Code Playgroud)
现在,我需要检测新的结束时间是否在几个小时之间(比如20:00到06:00),这应该从计算中排除.
IE浏览器.如果旧的结局是今天,19:58,我们正在增加4分钟,新的结局应该是明天,06:02
额外的困难是添加的时间可能超过24小时.因此,如果旧结尾是今天,19.00,我们正在增加24小时,新结尾应该是后天,15.00(这听起来像一部非常糟糕的电影的标题;)
有没有办法在mysql中实现这一点?在一个查询?我也在考虑存储过程,但我没有任何经验.
一些测试数据:
CREATE TABLE IF NOT EXISTS `tt` (
`source` datetime NOT NULL,
`hours` int(11) NOT NULL,
`off_start` int(11) NOT NULL,
`off_long` int(11) NOT NULL,
`correct` datetime NOT NULL
) ENGINE=InnoDb;
INSERT INTO `tt` (`source`, `hours`, `off_start`, `off_long`, `correct`) VALUES
('2010-11-11 12:00:00', 1, 20, 10, '2010-11-11 13:00:00'),
('2010-11-11 19:00:00', 1, 20, 10, '2010-11-12 06:00:00'),
('2010-11-11 19:00:00', 2, 20, 10, '2010-11-12 …Run Code Online (Sandbox Code Playgroud) 关于应用架构的小问题:
我有一个python脚本,作为守护进程运行.
在里面我有很多对象,都是从一个类继承的(让我们把它命名为'entity')
我还有一个主要对象,让它成为'topsys'
实体由pair(id,type(= class,粗略))标识,并且它们以许多邪恶的方式连接.它们也一直在创建和删除,并且需要访问其他实体.
所以,我需要一种存储,基本上是字典词典(每种类型一个),包含所有实体.
问题是,更好的是:将这个字典作为对象属性或类实体附加到'topsys',作为类的属性?我会选择第二个(所以实体不需要知道'topsys'的存在),但我不喜欢直接在类中使用属性.或许还有另一种方式?
php ×6
mysql ×2
phpunit ×2
python ×2
algorithm ×1
class-design ×1
coding-style ×1
collation ×1
command-line ×1
datetime ×1
email ×1
linux ×1
namespaces ×1
oop ×1
optimization ×1
phing ×1
reference ×1
reflection ×1
selenium ×1
sql ×1
testing ×1
time ×1
unit-testing ×1
utf-8 ×1
variables ×1
windows ×1