社区
数据结构与算法
帖子详情
wrap函数
aioros9520
2009-09-01 08:41:38
有没有人知道wrap函数是什么?应该是个算法
这是网上的解释: 该函数返回j=index-k*limit,其中k是一个整数,取适当值保证j落在区间[1,limit]内。该函数相当于index模limit再加1。该函数在循环、多阶段计划编制中特别有用.
但我还是不懂, 有高手能举个例子解释下用途么?
...全文
269
4
打赏
收藏
wrap函数
有没有人知道wrap函数是什么?应该是个算法 这是网上的解释: 该函数返回j=index-k*limit,其中k是一个整数,取适当值保证j落在区间[1,limit]内。该函数相当于index模limit再加1。该函数在循环、多阶段计划编制中特别有用. 但我还是不懂, 有高手能举个例子解释下用途么?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
LVJourney
2009-10-08
打赏
举报
回复
[Quote=引用 3 楼 aioros9520 的回复:]
引用 1 楼 problc 的回复:
该函数相当于index模limit再加1
按这句话的意思
wrap(index,limit) = int(indext%limit) + 1
没有什么特别的,一个小函数,把index映射到1-limit之间
有解释说防止集合索引越界
网上的实例解释
实例:
职员时序安排模型
一项工作一周 7 天都需要有人(比如护士工作) ,每天(周一至周日)所需的最少职员数为 20、16、13、16、19、14 和 12,并要求每个职员一周连续工作 5 天,试求每周所需最少职员数,并给出安排。注意这里我们考虑稳定后的情况。
这是原程序
model:
sets:
days/mon..sun/: required,start;
endsets
data:
!每天所需的最少职员数;
required = 20 16 13 16 19 14 12;
enddata
!最小化每周所需职员数;
min=
@sum(days:start);
@for(days(J):
@sum(days(I) | I #le# 5:
start(@wrap(J+I+2,7))) >= required(J));
!外国人的第一天是星期日;
end
将上面的程序中的集修改为
sets:
days/1 2 3 4 5 6 0/: required,start;
endsets
运行结果相同
lz还可以参考下http://www.madio.cn/mcm/thread-24860-1-1.html
problc
您能解释下源程序代码吗? 用C最好, 代码我看着实在费劲, 谢谢
[/Quote]同感!!! 顶了!
aioros9520
2009-10-08
打赏
举报
回复
[Quote=引用 1 楼 problc 的回复:]
该函数相当于index模limit再加1
按这句话的意思
wrap(index,limit) = int(indext%limit) + 1
没有什么特别的,一个小函数,把index映射到1-limit之间
有解释说防止集合索引越界
网上的实例解释
实例:
职员时序安排模型
一项工作一周 7 天都需要有人(比如护士工作) ,每天(周一至周日)所需的最少职员数为 20、16、13、16、19、14 和 12,并要求每个职员一周连续工作 5 天,试求每周所需最少职员数,并给出安排。注意这里我们考虑稳定后的情况。
这是原程序
model:
sets:
days/mon..sun/: required,start;
endsets
data:
!每天所需的最少职员数;
required = 20 16 13 16 19 14 12;
enddata
!最小化每周所需职员数;
min=
@sum(days:start);
@for(days(J):
@sum(days(I) | I #le# 5:
start(@wrap(J+I+2,7))) >= required(J));
!外国人的第一天是星期日;
end
将上面的程序中的集修改为
sets:
days/1 2 3 4 5 6 0/: required,start;
endsets
运行结果相同
lz还可以参考下http://www.madio.cn/mcm/thread-24860-1-1.html
[/Quote]
problc
您能解释下源程序代码吗? 用C最好, 代码我看着实在费劲, 谢谢
黄舒颖 咸丫蛋
2009-09-03
打赏
举报
回复
没有看懂,能否用白话文解释一下里面的核心思想?
谢谢!
问题很不错。
problc
2009-09-03
打赏
举报
回复
该函数相当于index模limit再加1
按这句话的意思
wrap(index,limit) = int(indext%limit) + 1
没有什么特别的,一个小函数,把index映射到1-limit之间
有解释说防止集合索引越界
网上的实例解释
实例:
职员时序安排模型
一项工作一周 7 天都需要有人(比如护士工作) ,每天(周一至周日)所需的最少职员数为 20、16、13、16、19、14 和 12,并要求每个职员一周连续工作 5 天,试求每周所需最少职员数,并给出安排。注意这里我们考虑稳定后的情况。
这是原程序
model:
sets:
days/mon..sun/: required,start;
endsets
data:
!每天所需的最少职员数;
required = 20 16 13 16 19 14 12;
enddata
!最小化每周所需职员数;
min=
@sum(days:start);
@for(days(J):
@sum(days(I) | I #le# 5:
start(@wrap(J+I+2,7))) >= required(J));
!外国人的第一天是星期日;
end
将上面的程序中的集修改为
sets:
days/1 2 3 4 5 6 0/: required,start;
endsets
运行结果相同
lz还可以参考下http://www.madio.cn/mcm/thread-24860-1-1.html
Lua之
wrap
函数
用法示例
主要介绍了Lua之
wrap
函数
用法示例,本文同时总结了
wrap
和Create的区别,需要的朋友可以参考下
使用jQuery中的
wrap
()
函数
操作HTML元素的教程
wrap
(),顾名思义,就是包裹的意思,就是在你所在器外层包裹一层东西,接下来我们就详细来看使用jQuery中的
wrap
()
函数
操作HTML元素的教程:
轻松掌握jQuery中
wrap
()与un
wrap
()
函数
的用法
wrap
()能够将指定HTML元素包裹DOM结构,与之相反un
wrap
()
函数
则是将DOM去掉^^下面让我们来以两个小例子轻松掌握jQuery中
wrap
()与un
wrap
()
函数
的用法:)
用法jQuery中的
wrap
()
函数
操作HTML元素的教程_.docx
用法jQuery中的
wrap
()
函数
操作HTML元素的教程_.docx
R语言ggplot2可视化分面图使用facet_
wrap
函数
和facet_grid
函数
实战
R语言ggplot2可视化分面图使用facet_
wrap
函数
和facet_grid
函数
实战 目录 R语言ggplot2可视化分面图使用facet_
wrap
函数
和facet_grid
函数
实战 #facet_
wrap
函数
和facet_grid
函数
用于一维变量 #facet_grid
函数
用于...
数据结构与算法
33,008
社区成员
35,326
社区内容
发帖
与我相关
我的任务
数据结构与算法
数据结构与算法相关内容讨论专区
复制链接
扫一扫
分享
社区描述
数据结构与算法相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章