这有解决方案吗?

时间:2013-12-31 12:24:43

标签: algorithm math computer-science

我们每小时最多下载3个网页,持续6个小时。

我们必须一次又一次地下载相同的网页来检查更改。 我们将网页分为两类:

Priority B: each webpage here must be downloaded once per 2 hours
Priority C: each webpage here must be downloaded once per 3 hours

我们在优先级B中有3个项目,在优先级C中有4个项目。 这意味着,平均每小时:

we must download 3/2 = 1.5 B items
we must download 4/3 = 1.333 C items

On 6 hours: (1.5+1.333)*6 = 17 items.

这证明问题可能有17个步骤的解决方案。

我的尝试(使用18个步骤):

Hour 1: B0 C0 B1
Hour 2: C1 B2 C2
Hour 3: B0 C3 B1
Hour 4: C0 B2 C2
Hour 5: B0 C1 B1
Hour 6: C3 B2 C2

问题:

我们每3小时一次C0。这同样适用于C1C3。我们还每2小时一次B0B1B2。那些都很好。

我们每2小时一次C2次。这让我很困惑。使用铅笔和纸张我没有在数学上证明通过每3个小时C2一次解决问题是可能的。

问题:对于有人修改我的尝试,是否有可能只使用17个步骤并每3小时下载C2一次?

1 个答案:

答案 0 :(得分:1)

这取决于你是否需要坚持按小时做事。即你的时间回归如何运作。如果你保持不变,但是在第2小时开始时和第4小时结束时取得C2,那么短短三个小时不同,然后在第6小时跳过C2并假设循环然后在三小时之间小时4结束和小时2的开始。

否则无法使用时隙进行此操作。原因是你必须至少有一个小时来检查2个优先级C项目。因为你在三小时后再次检查它有一个奇数小时和一个偶数小时有2个优先级C检查。由于B项检查所有偶数或所有奇数小时,因此您将仅限于其中两个(一个在奇数,一个在偶数),所以你不能这样做。