一个算法的实现?!!

icybing992 icybing992 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
本人现在做一个关于排列的程序, 现有n个零件
1 将p1零件排放在板材的左下角
2 将pi(i=2,3,…,n)置于所有零件右边最大高度处,交替向下向左移动pi,首先尽可能向下移动,然
后再尽可能向左移动,直至pi无法向下向左移动为止(即接触到其他零件或板材边界为止
).

首先做了一个判断零件是否相交的函数bIntersectionInPartMgr().返回一个 bool值
下面是从零件p2开始的移动部分的程序:
//先向下移动
if (!bIntersectionInPartMgr()) {

while (!bIntersectionInPartMgr()) {
pt.y -= 5;
}
pt.y += 5;
}

if (!bIntersectionInPartMgr()) {
while (!bIntersectionInPartMgr()){

pt.x -= 5;
// 向下优先
if (!bIntersectionInPartMgr()) {
while (!bIntersectionInPartMgr()) {

pt.y -= 5;
}
pt.y += 5;
}

}
pt.x += 5;
}

在这个算法中每个零件移动的单位是5.整个材料的长度和宽度都为300.
我用这个算法执行起来问题很多,一个是计算时间较长,二是容易出错.
希望哪位高人能指点迷津!!!!! 谢谢!!!!!
...全文

相关推荐

mysql中like % %模糊查询

1,%:表示任意0个或多个字符。可匹配任意类型和长度的字符,有些情况下若是中文,请使用两个百分号(%%)表示。 比如 SELECT * FROM [user] WHERE u_name LIKE ‘%三%’ 将会把u_name为“张三”,“张猫三”、“三脚猫”,“唐三藏”等等有“三”的记录全找出来。 另外,如果需要找出u_name中既有“三”又有“猫”的记录,请使用and条件 SELECT * FROM [user] WHERE u_name LIKE ‘%三%’ AND u_name LIKE ‘%猫%’

阿杰同学

产业园区运营负责人如何提升园区内企业技术需求的响应效率?.docx

科易网基于40亿+科创知识图谱数据库,深度探索AI技术在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,研究科技创新领域的AI+数智化解决方案,推动科技创新与产业创新智能化发展。

BIZKEEN

产业园区运营负责人如何精准对接企业技术需求与科研资源?.docx

科易网基于40亿+科创知识图谱数据库,深度探索AI技术在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,研究科技创新领域的AI+数智化解决方案,推动科技创新与产业创新智能化发展。

BIZKEEN

职业技能竞赛技术文件 评分采用主观评价与客观测量相结合的方式,并依据特定优先级处理成绩并列情况

; 阅读建议:此资源以开发简化版Spring学习其原理和内核,不仅是代码编写实现也更注重内容上的需求分析和方案设计,所以在学习的过程要结合这些内容一起来实践,并调试对应的代码。

洛卡纳哈

基于https://github.com/can1357/oh-my-pi 实现 rpc agent

基于https://github.com/can1357/oh-my-pi 实现 rpc agent

AuLuo-
评论 13
收藏 已收藏
分享
返回顶部
icybing992
C++ 语言 65,214 成员 250,514 内容