96SEO 2026-02-19 08:57 2
每个工件的每个工序称为一个操作#xff0c;…[NOIP2006

道工序每道工序都在不同的指定的机器上完成。
每个工件的每道工序都有指定的加工时间。
道工序的这个操作。
在本题中我们还给定对于各操作的一个安排顺序。
另一方面在安排后面的操作时不能改动前面已安排的操作的工作状态。
由于同一工件都是按工序的顺序安排的因此只按原顺序给出工件号仍可得到同样的安排顺序于是在输入数据中我们将这个安排顺序简写为
还要注意“安排顺序”只要求按照给定的顺序安排每个操作。
不一定是各机器上的实际操作顺序。
在具体实施时有可能排在后面的某个操作比前面的某个操作先完成。
当一个操作插入到某台机器的某个空档时机器上最后的尚未安排操作的部分也可以看作一个空档可以靠前插入也可以靠后或居中插入。
为了使问题简单一些我们约定在保证约束条件
2的条件下尽量靠前插入。
并且我们还约定如果有多个空档可以插入就在保证约束条件
2的条件下插入到最前面的一个空档。
于是在这些约定下上例中的方案一是正确的而方案二是不正确的。
显然在这些约定下对于给定的安排顺序符合该安排顺序的实施方案是唯一的请你计算出该方案完成全部任务所需的总时间。
当处理这个问题时我们可以将其类比成一个工厂里的任务分配问题。
下面是一个小学生都能理解的解题思路附带一些简单的代码解释。
我们有很多台机器和很多个任务每个任务都有几个步骤每个步骤都需要在某个机器上完成并且需要花一些时间。
对于每个任务我们需要知道每个步骤应该在哪台机器上完成以及需要花多少时间。
针对每个任务和每个步骤读取它应该在哪台机器上完成以及需要花多少时间。
对于每个任务步骤我们会找到合适的时间段然后更新机器的时间线并记录任务的完成时间。
这段代码比较难以理解所以我把他再次分为几点
最终答案所有任务都完成的时间点6.1这些数组用于存储我们模拟中需要的信息。
machineTimeline
jobList[i];jobStep[currentJob];int
jobs[currentJob][jobStep[currentJob]].machineId;int
jobs[currentJob][jobStep[currentJob]].timeCost;int
(machineTimeline[currentMachineId][j]
{machineTimeline[currentMachineId][k]
是当前任务步骤对应的任务编号。
我们递增jobStep[currentJob]表示当前任务已完成的步骤数。
然后我们获取当前步骤需要在哪台机器上执行以及需要多少时间。
我们使用
s来记录在机器上找到的可用时间段的长度。
我们从上次这个任务完成的时间lastJobTime[currentJob]的下一个时间点开始查找。
我们检查
machineTimeline[currentMachineId][j]如果等于
的值达到当前步骤所需的时间时说明我们找到了一个满足条件的时间段。
我们将从
lastJobTime[currentJob]表示当前任务上一次完成的时间。
是用来计算连续空闲时间段的计数器。
当我们需要找到一个连续时间段足够容纳当前步骤所需的时间时我们使用
j检查机器时间线上的每个时间点。
如machineTimeline[currentMachineId][j]
currentTimeCost说明我们找到了一个足够长的连续空闲时间段可以在机器上执行当前任务步骤。
然后我们会将这个时间段标记为机器被占用并更新相应的时间和计数器。
在这里充当了一个计数器帮助我们在机器时间线上找到足够长的连续空闲时间段以满足当前任务步骤的时间要求。
jobList[i];jobStep[currentJob];int
jobs[currentJob][jobStep[currentJob]].machineId;int
jobs[currentJob][jobStep[currentJob]].timeCost;int
(machineTimeline[currentMachineId][j]
{machineTimeline[currentMachineId][k]
更新当前任务的上次完成时间lastJobTime[currentJob]
作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。
| 服务项目 | 基础套餐 | 标准套餐 | 高级定制 |
|---|---|---|---|
| 关键词优化数量 | 10-20个核心词 | 30-50个核心词+长尾词 | 80-150个全方位覆盖 |
| 内容优化 | 基础页面优化 | 全站内容优化+每月5篇原创 | 个性化内容策略+每月15篇原创 |
| 技术SEO | 基本技术检查 | 全面技术优化+移动适配 | 深度技术重构+性能优化 |
| 外链建设 | 每月5-10条 | 每月20-30条高质量外链 | 每月50+条多渠道外链 |
| 数据报告 | 月度基础报告 | 双周详细报告+分析 | 每周深度报告+策略调整 |
| 效果保障 | 3-6个月见效 | 2-4个月见效 | 1-3个月快速见效 |
我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:
全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。
基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。
解决网站技术问题,优化网站结构,提升页面速度和移动端体验。
创作高质量原创内容,优化现有页面,建立内容更新机制。
获取高质量外部链接,建立品牌在线影响力,提升网站权威度。
持续监控排名、流量和转化数据,根据效果调整优化策略。
基于我们服务的客户数据统计,平均优化效果如下:
我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。
Demand feedback