首页 > 其他分享 >摩尔投票

摩尔投票

时间:2024-04-28 19:45:24浏览次数:13  
标签:cnt 二元 元素 摩尔 else 投票 配对 分量

先给出做法

m,cnt = 0,0
    for n in a:
        if cnt == 0:
            m = n
            cnt = 1
        elif n == m:
            cnt += 1
        else:
            cnt -= 1
    return m

讲一下正确性

我们将上述看成配对操作,对于cnt==0的这个if和n==m的这个if,我们认为是新创建了一个对,目前这个对只有第一分量,即当前的m;对于最后一个else,我们认为是用当前的n去与当前的m配对(即填充第二分量),那么最终遍历完之后就会得到一些二元组,这些二元组的第一第二分量都不相等

如果最后的\(m\)不是主元素(假设存在主元素),那么这个\(m\)会单独成对,原数组的主元素一定是会与其他元素配对的,但是主元素的个数已经超过一半了,不可能满足与其他元素配对,所以最后的\(m\)一定是主元素

标签:cnt,二元,元素,摩尔,else,投票,配对,分量
From: https://www.cnblogs.com/dingxingdi/p/18164374

相关文章

  • 使用微信小程序开发制作一个简易的在线投票应用
    代码案例:微信小程序在线投票应用本案例将使用微信小程序开发工具进行开发,实现一个简易的在线投票应用。该应用的主要功能包括创建投票、参与投票、查看投票结果等。创建投票用户可以输入投票主题、选项以及投票截止日期来创建一个新的投票。首先,在小程序的页面目录中创建一......
  • Node.js毕业设计基于的班委报名投票系统(Express+附源码)
    本系统(程序+源码)带文档lw万字以上  文末可获取本课题的源码和程序系统程序文件列表系统的选题背景和意义选题背景:随着信息技术的飞速发展,互联网已经深入到我们生活的各个角落,包括教育领域。在传统的班委选举中,通常采用纸质投票的方式,这种方式不仅浪费资源,而且效率低下,统......
  • Python学习笔记-Flask实现简单的投票程序
    1.导入flask包 fromflaskimportFlask,jsonify,abort,make_response,request,render_template2.初始化Flask应用:app=Flask(__name__)3. 定义投票种类data=[{'id':0,'name':'劳动节','num':0},{'id':1,'name&#......
  • CTS2024 投票游戏
    首先手玩可以发现求出两人谁先被票出是困难的,但如果我们能求出两人各票出时的票数,那么只要比较一下票数的大小就可以直到票出的顺序,然而一个点的票数的大小与其子结点有关,如果我们能确定子结点最终票出时的票数,那么只要处理当且菊花图的一个问题即可,将子节点的最终票数从大到小排......
  • Map集合做投票功能
    1publicstaticvoidmain(String[]args){2//学生选景点a,b,c,d四个景点,80个学生3String[]scene={"A","B","C","D"};4StringBuildersb=newStringBuilder();5Randomr=newRand......
  • leetcode 169(摩尔投票)
    Problem:169.多数元素目录思路解题方法复杂度Code思路这里选择采用摩尔投票的方式进行计算众数,这里众数的定义是超过一半的数,假设众数的票为+1,负数的票为-1,则不难得到:当目前的票数为0时,后面的众数仍然是整个数组的众数.根据这个性质设计算法所有数的票面值和为......
  • 在Ubuntu 20.04.1 LST上安装摩尔线程MTT S80驱动
    在Ubuntu20.04.1LST上安装摩尔线程MTTS80驱动1.Ubuntu指定版本下载,不要搞错。http://old-releases.ubuntu.com/releases/20.04.1/ubuntu-20.04.1-desktop-amd64.iso2.UltralISO制作U盘启动盘,安装系统,期间不要更新系统和软件。3.重启一次,有线网络自动启用。4.重启,......
  • Redis哨兵模式:什么是哨兵模式、哨兵模式的优缺点、哨兵模式的主观下线和客观下线、投
    什么是哨兵模式哨兵模式是Redis的高可用解决方案之一,它旨在提供自动故障转移和故障检测的功能。在传统的Redis部署中,单个Redis节点可能成为单点故障,一旦该节点宕机,整个系统将不可用。为了解决这个问题,哨兵模式引入了多个Redis节点,其中一个节点被选为主节点,其他节点作为从节点。......
  • 2023-12-27:用go语言,店铺数量n,编号1~n, 人的数量m,编号1~m, 每个人有自己投票的店铺p,和改
    2023-12-27:用go语言,店铺数量n,编号1~n,人的数量m,编号1~m,每个人有自己投票的店铺p,和改投1号店的报价x。返回想让1号店铺成为人气最高的店,至少花多少钱?1<=p,n,m<=3000,1<=x<=10^9。1号店铺贿赂问题。来自华为OD。答案2023-12-27:灵捷3.5大体步骤如下:minCost1算法步骤:1.统计每个店......
  • 摩尔线程S2000GPU环境配置
    引子书接上文,这边再来一个国产AI芯片的环境配置,OK,让我们开始吧。一、安装系统Ubuntu20.04.11、USB光盘刻录系统2、安装3、系统主板BIOS开启Above4G及ResizeBAR功能4、命令lspci|grep123二、安装GPU环境1、安装驱动程序(服务器Ip:10.231.6.92,账号:nick密码:123456)......