Kevin_qing(Kevin)您能具体一点,或者说出公式吗?
解决方案 »
- dbx error: error code: -1
- 用ShellExecute调用chm文件时,怎么样实现一打开chm文件时就到指定的html中??
- 各位楼主啊,我真得有不明?
- 如何在ADOuery里动态加入永久字段?
- 如何在2000和xp下用delphi进入ring0?对本问题不报希望,随便贴贴。
- 200RMB 求 破此DLL中一解密函数的具体算法
- 怎样在ADOQuery中加入Data字段
- 用原生ADO对象时,变量如何定义? 直接写cn:=createoleobject("adodb.connection"); 总是提示变量cn 未定义?
- 高手请进:::winsocket编程问题!!十万火急!!SOS!!
- 怎样把数据库中计算所得的值存入表中的字段?
- 北京的朋友,讨论软件问题,留下E-mail
- 请问用 QRPreview 自定义预览时怎样实现“上一页”、“下一页”?
以各板边长排序 -> 首尾相加(尾部指针由尾向首扫描),取最佳组合 -> 截选出此组合,放入另一队列
|___________________________________|有点类似快速排序的思维方式,希望有用。
把原料分为上下两个部分,上半部分,先横向放再纵向放,下半部分先纵向再横向放。(相当于四个部分,每一部分都从0循环到最大可放数,穷举所有组合。)有很大的漏洞:就是我把上下两部分独立开来算,其实有时候上下的剩料合可能也能截出一块来。(什么情况会出现,我还没找到)你改进一下吧。const
W=250;
H=120;implementation{$R *.DFM}function sss(x,y:integer):integer;
var i,j,k,max,n1,n2:integer;
begin
max:=0;
for i:=0 to W div x do
begin
for j:=0 to H div y do
begin
n1:=i*j+(j*y) div x *(W-i*x) div y;
for k:=0 to W div y do
begin
n2:=(H-j*y) div x *k+(W-k*y) div x * (H-j*y) div y;
// n1是上半部分的块数,n2是下半部分的块数
if (n1+n2)>max then
max:=n1+n2;
end;
end;
end;
result:=max;
end;