Java选项计数器

问题描述 投票:-1回答:2

假设我有6个选项和4个人可以选择任何这些选项。

每个人有4个变量(int),他们可以选择一个选项。

两个或更多人可以选择相同的选项。

如何在不执行大量if语句的情况下计算每个选项的选择次数?

另外,我不允许使用数据结构。

java netbeans counting
2个回答
0
投票

您可以使用素数p_1到p_6存储答案。每个选项的唯一素数p。你从一个'记忆'整数m开始。每次用户你选择一个选项时,你将'memory'int与相应的选项prime m = m * p_i相乘。在任何给定时间,您都可以找到选定的选项作为m的主要分解。这种方法不允许您恢复选择的顺序。如果这也很重要,你可以选择用素数和他们的答案来编码用户m = p_1 ^(选项用户1)* p_2 ^(选项用户2)* ... * p_n ^(选项用户n) 。无论如何,您的选择取决于您想要对答案做什么以及是否要引入更多用户或更多选项。我希望这可能会让你为你的任务指明一个有用的方向。


0
投票

使用hashmap存储个人用户及其选项。然后遍历散列映射以确定选择特定选项的频率。

HashMap<Integer, Integer> selections = new HashMap<Integer, Integer>();
© www.soinside.com 2019 - 2024. All rights reserved.