首页 > 其他分享 >随机化题目合集

随机化题目合集

时间:2023-06-10 22:45:51浏览次数:45  
标签:题目 复杂度 随机化 vector 随机 frac oplus 合集

CF840D

题目链接

注意到一个很有趣的事情是,一个数如果在长度为 \(l\) 的区间中出现次数严格大于 \(\frac{l}{k}\) 次,那我从这个区间中期望随机 \(k\) 次就能随到它。

所以我们对于每个询问,都先随机 \(B\) 次,把随机到的数挂进一个 vector,我们对这里面的数进行 check ,把满足条件的数取个最小值即可。

现在问题在于快速 check。当然可以主席树或者挂若干个 vector 然后在里面 lower_bound,但是这样复杂度是 \(O(qB\log n)\) 的,我们希望有一些更为纯真的做法。

莫队,把 vector 挂下来,然后对询问跑莫队,维护当前区间内数字内出现次数即可 \(O(1)\) check。时间复杂度 \(O(n\sqrt{q}+qB)\)。

CF364D

题目链接

很有趣的题目,但是忘了我啥时候做的。

考虑最终答案有啥性质,他一定是超过 \(\frac{n}{2}\) 个数的因子。这意味着我如果随机选一个数字 \(x\),我将其和其他数字取个 gcd 并把得到的 gcd 扔到一个桶里计数,然后对桶里的东西做 Dirichlet 后缀和,答案就有 \(\frac{1}{2}\) 的几率是出现次数大于 \(\frac{n}{2}\) 的数中的最大值。

那我多随几次就做完了,设随机次数为 \(B\),则错误率为 \(\frac{1}{2^B}\)。时间复杂度 \(O(B(d(V)^2+\sqrt{V}+n\log V))\)。

CF1168E

题目链接

不会证明正确性/yun。

考虑随两个排列 \(p,q\),我们把所有不合法(即 \(p_i\oplus q_i\neq a_i\)) 的位置丢进队列里。每次随机调整 \(p\) 和 \(q\)。调整一个排列时,拎出来 \(p\) 中数字为 \(q_i\oplus a_i\) 的位置和当前位置 \(i\) 交换。若这次交换使其不合法,则将其加入队列,直到队列被删空为止。

考虑如果出现循环交换的情况怎么办。设定一个阈值 \(B\),若重构 \(B\) 次仍未成功,则再次随机排列。

无解是 \(\oplus_{i=1}^n a_i\neq0\),必要性显然,但是我的随机没法证明他充分/zj。

标签:题目,复杂度,随机化,vector,随机,frac,oplus,合集
From: https://www.cnblogs.com/-Complex-/p/17472114.html

相关文章

  • 【图像去噪】基于图像加噪去噪算法合集附matlab代码
    ✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。......
  • 简单滑动窗口题目解析(c实现)
    下面的题目要使用的主要思路为滑动窗口,但是还需要使用哈希表来储存窗口中的元素个数题目一:无重复字符的最长子串题目一链接给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入:s="abcabcbb"输出:3解释:因为无重复字符的最长子串是"abc",所......
  • Python小屋刷题软件2425道题目分类速查表
    “Python小屋”编程比赛正式开始Python小屋刷题软件客户端使用说明(视频讲解)Python小屋刷题神器最近升级的新功能介绍每次录入新题目时都会更新下面的分类表,请注意查看最新信息。客观题分类:Python基础知识:1-57内置函数、运算符:58-320列表、元组、字典、集合、切片、推导式:321-792选......
  • 使用Python批量随机化文件名
    本文的代码可以把指定文件夹中的所有文件名批量随机化。fromstringimportascii_lettersfromosimportlistdir,renamefromos.pathimportsplitext,joinfromrandomimportchoice,randintdefrandomFilename(directory):forfninlistdir(directory):#......
  • Python小屋刷题神器题目分类速查表
    每次录入新题目时都会更新下面的分类表,请注意查看最新信息。客观题:Python基础知识:1-36内置函数、运算符:37-271列表、元组、字典、集合、切片、推导式:272-679选择结构与循环结构:680-765字符串操作:766-988正则表达式:989-1080函数定义与使用:1081-1220面向对象程序设计:1221-1293文件操......
  • 全网八股文面试高频题目--JAVA基础
    八股文--JAVA基础目录八股文--JAVA基础1.JDK、JRE、JVM有什么区别1.1Java为什么被称为平台无关性语言?2.常用数字类型的区别3.Float在JVM的表达方式及使用陷阱4.面向对象三个特性是什么4.1重载和重写的区别?4.2Java中是否可以重写一个private或者static方法?4.3构造方法有哪些......
  • 一文读懂大厂面试的计算机网络面试题目(超详细整理)(TCP/IP,OSI,HTTP协议)
    对于大厂的面试来说,掌握基本的计算机网络知识十分必要,但是说实话就单单是博主觉得,看书去复习,是最好的“安眠药”,哈哈哈,所以具有针对性的去学习更加的有效果,所以直接看大厂的高频面试题,快速建立知识结构体系。以下的一些是博主通过博览众多平台的博客推文进行的汇总:1.计算机网络OS......
  • [第五届蓝桥杯省赛C++B组]省赛全题目题解
    文章目录快速分支通道酒精与饮料切面条李白打酒史丰收运算打印图形奇怪的分式六角填数蚂蚁感冒地宫取宝小朋友排队1.题目啤酒和饮料算法标签:枚举题目描述:题目答案:题目思路:题目代码:2.题目切面条来源:第五届蓝桥杯省赛C++B组算法标签递推题目描述:题目答案:题目思路:题目代码:3.题目......
  • [第七届蓝桥杯省赛C++B组]省赛全题目题解
    文章目录快速分支通道煤球数目生日蜡烛凑算式快速排序抽签方格填数剪邮票四平方和交换瓶子最大比例煤球数目题目来源:第七届蓝桥杯省赛C++B组算法标签:递推题目描述:题目答案:题目思路:题目代码生日蜡烛题目来源:第七届蓝桥杯省赛C++B组算法标签:枚举,双指针题目描述:题目答案:题目思路:题目代......
  • 比赛题目选讲(2023)
    5月NOIP2018模拟Day2:ending:给定一棵\(n\)个点的树,边权\(w\in\{0,1\}\)。求出有多少个三元组\((i,j,k)\),满足\(dist(i,j),dist(i,k)>0\)。\(1\len\le10^5\)。题解:若\(w(i,j)=0\),则将\(i,j\)合并进一个连通块内。对于一个连通块,设其大小为\(size\),则对于该连通块......