最优数字分配
来源:互联网 发布:知乎图片只右显示一半 编辑:程序博客网 时间:2024/06/06 03:53
数字分配策略
赛题简介:介绍整个赛题的思路和整体要求
最优数字分配策略
比赛题目条件:
假设有2500个数据存储单元,形成为50*50的正方形矩阵。每个数据存储单元允许存储2~5个整数,整数范围为1~70,每个整数使用次数不限。
50*50数据存储单元如下表形式:
1-1
1-2
1-3
1-4
…
2-1
2-2
2-3
2-4
…
3-1
3-2
3-3
3-4
…
4-1
4-2
4-3
4-4
…
…
…
…
…
…
其中1-1、1-2等表示存储单元在矩阵中的行列位置,也可以将其作为存储单元的名称。
比赛题目要求:
- 将1~70的整数按各存储单元的整数个数要求,分配到各数据存储单元中。未按要求分配整数,比赛无成绩,直接出局;
- 每个存储单元内的整数不能相同且不能相邻。如:1和2、2和2、2和3不能出现在同一个存储单元中。如果违反规则,按下述罚则处理:针对每个存储单元都统计一遍,出现一次相同,结果累加100违约分;出现一次相邻,结果累加50违约分;
- 每个存储单元与相邻的存储单元内的整数不能相同且不能相邻。如:第2-2存储单元内的整数与第1-1、1-2、1-3、2-1、2-3、3-1、3-2、3-3存储单元内的整数不能相同且不能相邻。如果违反规则,按下述罚则处理:针对每个存储单元都统计一遍,出现一次相同,结果累加20违约分;出现一次相邻,结果累加10违约分;
- 每个存储单元与相邻存储单元的相邻存储单元内的整数不能相同。如:第2-2存储单元内的整数与第1-4、2-4、3-4、4-1、4-2、4-3、4-4存储单元内的整数不能相同。如果违反规则,按下述罚则处理:针对每个存储单元都统计一遍,出现一次相同,结果累加1违约分;
- 各比赛小组自己设计分配算法,在规定时间内(比如1小时)运算分配结果,哪个小组最后的违约分值最低,哪个小组获胜。
违约分计算举例:
行\列
列1
列2
…
行1
1,3,5
7,9
…
行2
11,12,13
1,4
…
…
…
…
…
上表所示为部分存储单元内整数分配结果,违约值计算方法如下:
当前存储单元标识
冲突存储单元标识
当前存储单元违规整数
冲突存储单元违规整数
违约分数
1-1
2-2
1
1
20
1-1
2-2
3
4
10
1-1
2-2
5
4
10
2-2
1-1
1
1
20
2-2
1-1
4
3
10
2-2
1-1
4
5
10
2-1
2-1
11
12
50
2-1
2-1
12
13
50
为了方便计算,同存储单元内(如2-1)的冲突整数按照规则计算一次违约分,相邻存储单元内(如1-1和2-2)的冲突整数由于参照主体改变会重复计算违约分。最后的总分为所有违约分的总和。
评价标准:
本题没有标准答案,完全以运行时间和最后的违约值来评价比赛结果。评审组将随机确定各数据存储单元内的整数个数,分别运行各比赛小组提交的程序,并将各程序在规定的比赛时间内运算的有效分配结果进行违约值统计,然后按违约值由低到高排序,根据违约值排序产生结果排名(如果违约值相同,则用时少的小组排名靠前;违约值相同并且用时相同的小组排名相同)。
赛题业务场景:描述赛题相关的真实企业业务背景。从真实场景中,适当简化或者提炼出适合比赛的赛题场景
在移动通信过程中,移动用户的通信内容通过移动台(手机等移动通信设备)转换成频率信号后和通信基站(专门负责收发无线信号的物理通信设备)之间进行交互传输。
国家相关部门为各电信运营商划定专门的频率区间,此频率区间按照相关电信标准可平均划分若干等份小的频率区间作为信号传输的最小单位,每个最小单位最多可同时为8个移动用户服务。各电信运营商频率区间不一样,频率带宽也不一样,即可划分的最小单位个数也不一样。
因此,各电信运营商需要根据用户密度在有限的频率资源条件下,建立多个通信基站,每个通信基站分配1个或多个服务频率,以服务通信区域内的用户群。同时,如果基站内或邻近的基站使用相同或相近的频率收发信号,这些基站由于距离位置关系,会相互产生不同程度的电磁干扰,导致基站服务的移动用户出现不同程度的通信障碍。
因此,各电信运营商在建立基站并分配服务频率的过程中会充分考虑周围基站的服务频率,使各基站的服务频率要尽量不与周围基站的服务频率相近,以减少通话过程中的干扰问题。在没有更好的频率资源可用的情况下,运营商会考虑重新分配所有基站的服务频率,达到降低干扰的目的。
根据业务背景,可按如下所述理解题目条件:
50*50的存储单元矩阵为某电信运营商服务某区域的50*50个通信基站
1~70的整数为某电信运营商的可用频率资源
每个存储单元内的整数个数为基站内服务频率个数
比赛要求2~4可理解为同基站内或相邻基站内尽量不能出现频率相近的情况,如果出现这种情况,不同距离位置的基站,会产生不同程度的通话干扰。
功能性需求
- 按题目要求设计分配算法
- 算法读取各数据存储单元内的整数个数,在规定时间内计算并可以人工或自动停止程序产生结果
- 最终结果可生成分配策略报表
- 可正确统计最终分配策略的违约结果值
- 可正确生成违反规则的详细数据报表
- 可记录开始运算到产生结果的用时
输入文件格式(示例):
输出报表格式(示例):
非功能性需求
无
其他限制条件:开发环境、实验平台、开发语言、数据库、编译器等限制条件
不限
测试数据或平台:提供给参赛者的测试环境和测试数据。(可提供电子档)
无需测试环境,各数据存储单元内的整数个数随机产生。最终根据各参赛小组分配结果,按照统一的评价标准评价各小组成绩。
其他要求
参赛小组需提交源程序、可执行程序及如下文档:
1. 算法描述
2. 编译及运行环境说明
3. 测试数据用例及结果
每个单元都是4个整数时,不产生违规;
每个单元都是5个整数时,违规分数2*1915;
随机情形,违规分0~2
- 最优数字分配
- 任务分配的最优方案
- 数字的最优组合算法
- 动态规划求解资源最优分配问题
- RFC179 连接的数字分配
- 动态规划-寻找最优分配时间。(未理解)
- 动态规划——求数字三角形最优解和最优路径
- 常量数字 被分配的位置
- 威威猫系列故事——数字分配
- python数字转换成中文/数字转换成汉字python:纯字符串方法最优
- 嵌入式操作系统内核原理和开发(最快、最优、最差内存分配算法)
- 挑战篇二.2:内存池分配问题(最优适应算法)——答案错误
- java算法-从30里面随机7个数字最优写法
- 算法:动态规划-数字三角形的最优解(打印路径)
- 互联网名称与数字地址分配机构ICANN简介
- 数值算法入门-求4轮车 3轮车 2轮车的分配问题的最优解
- 剑指offer——数组中出现次数超过一半的数字_(待写最优法分治)
- 最优装载
- 设计模式
- CIO并没有因为云安全的问题而烦恼
- windows apache php5.3.0 xcache
- 木马清道夫破解版
- 判断一个数是否是素数
- 最优数字分配
- 如何调试 message sent to deallocated instance 的问题
- Windows API编程之多线程
- Java socket经典示例
- 从卢松松博客文章学习网站的内链优化
- 求两个正整数的最大公约数
- java基础视频25days(毕老师)学习日志(day11、day12、day13)
- 关于java中JSplitPane放在JPanel中的例子
- pkg-config的用法