问题标签 [tournament]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 比赛生成器 PHP
我找到了这个包,我正在尝试运行示例并显示括号。
但它会输出一些奇怪的字符:
你明白了。
我想这是因为:
但我不知道如何解决它......
谢谢,阿拉
编辑:
所以我在 gat 说之后稍微修改了代码。
在我的控制器中,我得到了: public function getTest(){
在我的 test_img.php 页面中,我得到了这个:
反正也没用。。
php - 双淘汰赛赛程表
我正在尝试创建一些逻辑来生成双淘汰锦标赛括号中的事件时间表。
这是一个示例 8 队括号:
这些数字代表匹配数组中的索引,这是所需的输出。例如,索引 0 将代表团队 1 与团队 8(使用种子系统),索引 4 将代表索引 0 的获胜者与索引 1 的获胜者。
失败者的括号由获胜者括号的失败者填充,其中索引 6 是索引 0 的失败者与索引 1 的失败者,索引 8 是索引 4 的失败者与索引 6 的获胜者。
在视觉示例中,您可以看到用字母标记的团队,并清楚地显示获胜团队每次都在顶部分支,而失败团队在底部分支的清晰示例。指数 0 代表 A 队对 B,指数 4 代表指数 0 (A) 的获胜者对指数 1 (C) 的获胜者。指数 6 是指数 0 (B) 的输家与指数 1 (D) 的输家,指数 8 是指数 4 (C) 的输家与指数 6 (B) 的赢家
出现了一个明显的模式,但是当我尝试适应不同数量的竞争对手时,我的逻辑变得混乱和混乱。为简单起见,我将支架固定为只有 2 个团队的幂。我能够编写所有内容来为 8 队括号创建一系列匹配项,但我什至对自己的代码也失去了理解,因为它似乎不可扩展。
上面代码的输出:
关于如何修改它以适用于 4 队、16 队或 2^n 队支架的任何想法?我觉得“半决赛”标题下的逻辑是应该重复 0+ 次,但每次我尝试根据总轮数循环它时,它只是重复与上一轮相同的匹配。
c - 出乎意料 - 找到最大值和第二个最大值
我正在尝试在 C 中实现一个简单的锦标赛。
n = 5
和 1 2 3 4 5的输出
是最大值 = 4195048
下一个最大值 = 32588
并且这个输出每次都有少量变化!
如果我在构建函数之前放置一个测试 printf 命令,它不会执行。
有人可以找到错误/解释输出吗?谢谢 :)
sql - 使用 cake php 对锦标赛应用程序进行建模
我想用 cakePHP 创建一个锦标赛应用程序,我需要一些帮助来正确创建数据库和链接模型。
我的最终目标是:
我真的不知道如何组织模型和 sql 表,目前我看到 2 个表:
我是否需要两个表之间的另一个表(例如:matches_teams)或者我可以在我的匹配表中使用 teamA_id 和 teamB_id?CakePHP 是否支持同一模型中的多个外键?
我想知道是否有人已经在 cakePHP 中开发了这种项目,以及它是否工作正常且合乎逻辑(没有技巧)。
谢谢!
java - 括号锦标赛计划(optaplanner)
我正在尝试创建一个实现来计划每轮比赛的时间表。也称为括号锦标赛。
我正在尝试为此使用 OptaPlanner,但文档对我来说不是那么清楚。
我有以下课程:
- 播放器
- 桌子
- 比赛(包含:2 名球员和一张桌子)这是我的计划实体
- 回合(包含:比赛列表,球员列表,桌子列表,以前的比赛列表)这是我的计划解决方案)
- 时间表(包含:轮次列表)
我想要的,是至少 1 轮来自此信息的对决列表。
我没有得到的是如何在 drools 中配置我的规则。
例如:我如何配置一个简单的规则:一个machup 包含两个不是同一个玩家的玩家。另一种是:一场比赛包含两名未曾交手的球员最后:一张桌子可用于一场比赛。
感觉没那么复杂,但是文档(包括示例)还不足以实现。
c - 高尔夫锦标赛配对算法
想法很简单。函数需要一个参数,即玩家数量。它会生成每个玩家所在位置与另一个玩家的图表(包括屏幕)。如果玩家是偶数,则轮数等于玩家-1,否则,它等于玩家。
我注意到进行配对的最佳方法是更改数字的顺序(source)。
我找不到任何解决方案使其适用于不均匀的玩家人数。欢迎任何建议,因为我真的需要这个算法尽快开始工作。它看起来很简单,不需要太多编码,所以这不是问题。我只需要小费。
algorithm - 在 128 人锦标赛中分配 32 名种子选手的算法
我正在尝试创建一个网球锦标赛模拟器,其中游戏的结果是随机的(有点)。大满贯赛事共有 128 名球员,其中 32 名种子选手。目前我正试图将种子放在适当的位置。我根据正态分布(将代替他们的排名)生成球员的实力并将它们存储在升序排序的 std::array 中。我想简单地将平局最初表示为vector<double> Draw(128)
. 理想情况下,我会有一个算法让每个玩家在平局中处于适当的位置,但我还没有想出一个,所以我决定只将位置输入到一个数组中,然后根据情况选择适当的数组关于比赛中有多少球员。
位置如下:0,127,95,32,64,96,31,63,16,112,79,48,15,111,80,47,41,72,8,119,23,104,55,87,71,39,24, 7,56,88,103,120
以 32 的倍数表示的前几项是:0*32,4*32-1,3*32-1,1*32,2*32,3*32,1*32-1,2* 32-1,0.5*32,3.5*32-1,2.5*32-1,1.5*32,0.5*32-1,3.5*32,2.5*32。
我还没有从中找出一个模式。有一个已知的算法吗?
c# - 比赛生成:括号放置
我目前正在生成锦标赛括号系统,但我无法为以下内容提出一个好的算法:
我有一个列表,其中 TournamentRound 如下所示:
我确实有轮次的一代,并且知道所有的价值观。例如:
以下是我的问题:
假设最终 pdf 的一页上只有 6 个框有空间。 给定页面和框的固定大小,我如何计算框的位置?
编辑澄清!
我画了下图来展示上面提到的那 3 轮的输出会是什么样子。问题是例如:只有 6 个盒子有空间可以放在一页的高度上,这意味着在某些轮次中必须以某种方式进行分页。
如果有帮助,我正在考虑构建一个树状结构,其中每个节点都保存它的位置以及它在哪个页面(1、2、3 ...)上。
algorithm - 什么算法可以为有两个以上参赛者的回合生成循环“配对”?
我希望能够生成一组锦标赛对决,以便每个玩家至少面对其他玩家一次,每个玩家玩相同数量的游戏。把它想象成马里奥赛车循环赛的抽象。
就我而言,我有 17 名参赛者,并希望他们以 3 或 4 名选手的形式进行比赛。我想有一种方法来生成 S,一组 P(玩家)的子集,使得 P 的每个元素与 P 的每个其他元素出现在 S 的至少一个元素中。
起初我认为平衡比赛设计会回答问题,但它似乎没有任何方法可以在每轮比赛中匹配多个参赛者,每对只能进行多次额外的对峙。
它也有一个确切的封面问题的味道,但不完全是。
这也适用于四人国际象棋、冰屋、各种纸牌和骰子游戏等游戏。
algorithm - 锦标赛算法中的根索引
我正在努力建立使用锦标赛算法在数组中查找第 k 个最小元素的“O”复杂性。
我已经形成了反向树,最小元素位于反向树的根节点。[(n-1)*log n]
现在我们从底部的最小元素开始提升倒置树。
在每个级别找到根元素的索引不会再次成为 O'n' 操作吗?
我将不得不遍历每个级别的数组以通过“n”比较找到最小(根)元素的索引。[n*log n]
有没有更快的方法来设计每个级别的根元素的索引?