摘要:
简单模拟,题意描述不清晰,我来仔细描述一下,flashget在下载一些文件,每个文件有一个初始大小,初始速度,最大速度。当一个文件下载结束后,他的速度(占用的带宽)会平均分配给别的任务(各文件的速度增加值相同),假设我们要把速度x分配给a个文件,那么就要给每个文件分配x/a的速度,前提条件是分配后该文件的速度不超过其最大速度。若超过了则不能给他分配这么多,只让它达到其最大速度即可。这样一来我们的下载速度就会有剩余,因为受到最大速度的限制,有些文件并没有被分配到x/a这么多的速度。对于剩余的速度怎么处理呢?就是除去那几个已经到达最大速度的文件,其余文件按照刚才的方法再分配一次剩余速度。模拟即可。 阅读全文
posted @ 2012-11-01 18:04
undefined2024
阅读(250)
评论(0)
推荐(0)
摘要:
题意:给出一张地图矩阵,上面有些墙和石头,在空地上行走不需要时间,墙不可穿越,石头可以慢慢打破也可以用工具打破,用工具打破不需要时间,慢慢打破需要相应的时间。每个入口对应不同的携带工具的数量,且只能从一个入口进入,再不能去别的入口。问要拿到宝藏需要的最少时间。分析:带堆优化的最短路。建图比较复杂,图中每个节点对应矩阵中的一个格的一种工具状态,矩阵中走到每个格身上可能剩余的工具数量为0~26个,因此矩阵中每个格对应最短路图中的27个节点,每个节点有两个属性一个是地图中的位置,一个是剩余工具的数量。下面向图中加边,矩阵中a,b两格相邻,如果a是石头,那么我们由节点(a,k)向节点(b,k)引边(k 阅读全文
posted @ 2012-11-01 14:45
undefined2024
阅读(243)
评论(0)
推荐(0)