使用 Python 检测选民欺诈

pythonserver side programmingprogramming更新于 2025/12/26 2:52:17

假设我们有一个投票列表,其中列表中的每个元素都有两个元素 [c_id, v_id],c_id 是候选人 ID,v_id 是选民 ID。我们必须检查是否有任何投票者投票超过一次。

因此,如果输入为 [[5, 1],[5, 0],[5, 4],[5, 3],[5, 0]],则输出将为 True,因为 [5,0] 出现了两次

为了解决这个问题,我们将遵循以下步骤 −

创建一个名为 all 的新集合

  • 对于 votes 中的每个投票,执行
    • 将 (vote[1]) 插入 all
  • 当 all 的大小与 votes 的大小不同时返回 true

让我们看看下面的实现以便更好地理解 −

示例

class Solution:
   def solve(self, votes):
      all = set()
      for vote in votes:
         all.add(vote[1])
      return len(all) != len(votes)
ob = Solution()
votes = [[5, 1],[5, 0],[5, 4],[5, 3],[5, 0]]
print(ob.solve(votes))

输入

[[5, 1],[5, 0],[5, 4],[5, 3],[5, 0]]

输出

True

相关文章


有用资源