- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我想为许多牧师制定一个时间表。条件是:
我不能使用随机(1 到 12),因为牧师有可能去同一个教堂(他去同一个教堂的可能性为 8.3%)。
我想让他去同一个教堂的可能性很小(大约 3% 或更少)。
最佳答案
您的条件不需要随机选择给定牧师的下一个教堂。您不能只遍历教堂列表吗?
也就是说,给每个牧师分配一个数字,0-12。为每个教堂分配一个编号,0-12。第一个月:
Month 0:
pastor-0 --> church-0
pastor-1 --> church-1
pastor-2 --> church-2
...
pastor-n --> church-n
下个月,只需增加其中一个计数器(带环绕)
Month 1:
pastor-0 --> church-1
pastor-1 --> church-2
pastor-2 --> church-3
...
pastor-n --> church-0
然后对剩余的月份重复:
Month 3:
pastor-0 --> church-2
pastor-1 --> church-3
pastor-2 --> church-4
...
pastor-(n-1) --> church-0
pastor-n --> church-1
所有这些都有一个非常简单的循环 (O(n))。如果这让您感到困惑,我建议您尝试在纸上使用 n=3 来循环。
如果需要随机性,请更新您的问题。
按人数编辑
我正在删除我的答案并赞成这个答案,因为它是 O(n),而我的扩展以满足编辑的需要至少是 O(n^2)。
通过将 pastor-0 到 pastor-N 值索引到已随机排序的牧师数组中,您仍然可以具有随机性,因此至少与我的解决方案一样好。
结束按 PAX 编辑
关于java - 我如何为访问 n 个教会的 n 个牧师制定时间表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/330685/
我需要帮助制定 SQL 语句。这些表是 视频(video_id,描述,价格,category_id) 类别(category_id,描述) 查询需要生成一个摘要列表,显示属于每个类别的视频数量。未分配
我正在 Angular 1.5 中构建一个应用程序,并且我自己完成所有 CSS 等工作。到目前为止,我一直在通过在所有 html 模板中包含以下代码来处理错误和成功消息 然后我在处理错误/成
这是我在检查器上看到的: 两个规则中有一个左高亮,这是 Firefox 正在编写的规则,如果我查看计算样式,我会看到: 最后这是原始 CSS 的样子: 所以 Firefox 正在以某种方式改变位置和宽
我有两个系统 A 和 B。A 是 TCP Client,向 B 上的 TCP Server 发送消息。 ------------------ --------------
我是安卓新手。我想从 MainActivity.class 接收整数和字符串,并将其打印在 DisplayMessageActivity.class 中。从我在网上找到的所有解决方案中,他们说我应该使
我请求帮助了解如何使用 javax.persistence.criteria 包制定“in”条件。 我正在根据 Contacts 类的搜索条件创建 CriteriaQuery。一个联系人可以属于 0
我正在使用具有浮点坐标的 3D 向量进行计算。有时,我想检查一个向量是否非零。但是,对于 float ,总是有可能出现舍入错误。 Python 中是否有一种标准方法来检查 float 是否足够接近于零
这是一个愚蠢的问题,但我试图通过 Google、代码片段、教程来解决这个问题,所有这些都引导我找到一些示例,其中模型对于我想要执行的编码来说太浅了。 我想开发一个应用程序,其中数据采用 parent
我是一名优秀的程序员,十分优秀!