首页 > 其他分享 >ad-hoc 精选集

ad-hoc 精选集

时间:2024-10-18 22:09:47浏览次数:1  
标签:10 15 ad 31 所有 cdots bit 精选集 hoc

校内讲题。

传统

Sheriruth

一个连通块如果连不了边,那么一定形如 一棵内向树 或者 一棵内向基环树。前者只需要判断祖先关系,后者需要讨论是否在环上。

否则考虑一个点 \(u\) 如果有多条出边 \((u,v_1),(u,v_2),\cdots,(u,v_m)\),那么 \(v_1,v_2,\cdots,v_m\) 会互相连边形成一个团(无向完全子图),并且此时 \(v_i\) 能到的所有点也会被合并到这个团中。

于是最后连通块一定形如一个团和若干棵内向树,其中每棵内向树的根连向团中的某些点。大小为 \(s\) 的团上相异两点 \(u,v\) 的路径条数为 \(\sum_i(s-2)^{\underline i}\),于是直接做就行了。注意特判如果 \(u\) 直接走到团上的 \(v\) 的情况。

构造

没有改了的。

交互

World Ender

题解 markdown 流失了,看官方 beamer 的题解吧,大概是一样的。

通信

Broken Device

考虑相邻两位一组,用三进制表示 \(X\),每组有损坏/0/1/2 四种情况。那么损坏对应 \(00\),\(0,1,2\) 对应 \(01,10,11\)。这样构造能取到的上界为 \(3^{150/2-40}\) 大概是 \(5\times 10^{16}\)。

然后把所有位随机打乱一下,这样的话损坏的组的期望就会减少,期望上界会到 \(10^{19}\)。具体打乱做法就是让 AnnaBruno 共用一个随机种子,这样随机打乱的结果是相同的。

考虑把损坏的段也利用起来,如果有一段是 \(\mathtt{X\_}\),那么可以填入 \(01\);如果是 \(\mathtt{\_X}\),可以填入 \(10\)。这样就能过了。

因为是随机打乱的,所以很难构造数据卡掉。

Message

参考了 u 群里面的做法,这个做法不用关心数据包被纂改的情况。

首先肯定不能传一个长度 \(S\) 的信息,因为如果 \(S=1024\) 的话你至少要 \(1024+31=66\times 16-1\) 个 bit 来传输消息和可能被纂改的位置的信息,这样你要在 \(1\) bit 之内传入长度,这太难了。

所以可以先把 \(S\) 末尾加上形如 \(0111\cdots\),形成长度为 \(1025\) 的二进制串 \(S'\),这样的话我们把 \(S'\) 还原出来然后把最后一个 \(0\) 以及后面的位全删掉就行了。

然后考虑如何使用 \(31\) 个 bit 来传输 \(31\) 位中哪些位是可能被纂改的。

我们把所有不会被纂改的位,也就是所有 \(C_i=0\) 的 \(i\) 拿出来,从小到大记为 \(p_0,p_1,\cdots,p_{15}\)。

注意到 \(16>\frac{1}{2}\cdot 31\),所以可以构造一个唯一的最大值:具体地,如果我们将 \(p_i\) 向 \(p_{(i+1)\ \bmod\ 15}\) 连有向边,那么无论其余 \(\{0,1,\cdots,31\}\setminus \{p_0,p_1,\cdots,p_{15}\}\) 中任意一个位置如何连出一条边,这个图都会构成一个内向基环树。而 \(p_0,p_1,\cdots,p_{15}\) 为这个基环树的唯一最大环

那么我们只需要考虑如何传输连边的信息:对于任意的 \(C_i=0\),记录 \(d_i=(p_{(i+1)\ \bmod 15}-p_i) \bmod 31\),我们在前 \(d_i-1\) 个数据包的第 \(i\) 位传 \(0\),在第 \(d_i\) 个数据包的第 \(i\) 位传 \(1\)。然后接收的时候就只需要对每一位 \(i\) 算出第一个 \(1\) 的位置 \(d'_i\),然后 \(i\) 向 \((i+d'_i)\bmod 31\) 连边就行了。这样的话 \(C_i=0\) 的位连的边一定是对的,\(C_i=1\) 的位连的边可以任意。找到最大环就找到了所有 \(C_i=0\) 的位。

然后我们把 \(S'\) 中 \(1025\) 个 bit 塞进所有 \(C_i=0\) 的位的剩余没用到的位置即可。

(Un)labeled graphs

只需要还原点的编号即可得到整个图。

新建一条长度为 \(\log n\) 的链来表示编号的二进制,然后我们考虑如何确定链的方向,以及如何区分出这条链。

设多出来的点为点 \(A,B,C\)。点 \(A\) 向链上的所有点连边;点 \(B\) 连向 \(A\) 和链首(也就是代表第 \(0\) 位的点);然后将点 \(C\) 连向除了点 \(A\) 之外的所有点。

这样的话,找到度数最大的点就是点 \(C\);唯一不与 \(C\) 相连的就是点 \(A\);与 \(A\) 相连的所有点就是点 \(B\) 和整条链;唯一与 \(A,C\) 相连且度数恰好为 \(3\) 的点为点 \(B\)。

可能有些特殊情况需要处理,但这是简单的。

8 染色

首先进行黑白 \(2\) 种颜色是简单的,于是不难想到每个点传 \(2\) 个 bit,表示颜色在二进制下的前两位。这样就可以做 \(L=4\times 10^5\)。

考虑所有度数 \(<8\) 的点,它们的颜色都可以用周围点的颜色排除出来。于是我们只需要传度数 \(\ge 8\) 的点的 bit,然后求出这些点的颜色后再拓扑出其余点的颜色即可。

由于 \(\sum_i d_i=2m\),于是 \(2\sum_i[d_i\ge 8]\le \frac{m}{2}\le 2.5\times 10^5\)。于是就做完了。

卡常。

标签:10,15,ad,31,所有,cdots,bit,精选集,hoc
From: https://www.cnblogs.com/Ender32k/p/18475147

相关文章

  • C - Word Ladder (Toyota Programming Contest 2024#9 (AtCoder Beginner Contest 370)
    题目链接:C-WordLadder题目:样例:分析:不要被题目所吓到,一切长题目都是纸老虎。题目大意就是给你两个字符串s和t,一次只能更换一个字母,求s变到t更换的次数,并输出每次更换一个字母后的最小字典序字符串。题意好理解,可以直接暴力,大力出奇迹。但是有没有更好的方法呢?既然问了......
  • Maven与Gradle的区别
    Maven与Gradle是两种流行的构建工具,广泛用于Java项目的管理和构建。以下是它们的对比,包括官网、Windows11配置环境、在IDEA中的相同点和不同点,以及它们各自的优缺点。官网Maven官网: https://maven.apache.orgGradle官网: https://gradle.org一、Windows配置环境1.Maven......
  • css3新增盒子属性:怪异盒子、resize、box-shadow、opacity
    1.怪异盒子(常用)box-sizing:border-box   设置怪异盒子后,盒子的border和padding都计算在内容当中,给元素设置多少宽高,就是多少宽高2.resize的使用(不常用)resize:horizontal;使元素可水平拖动调整resize:horizontal;使元素可垂直拖动调整resize:both;使元素可水平垂直拖动调整......
  • PYNQ Z2 读取xadc外部通道电压
    使用XADC或者JTAG只能读取XADC的内部电压,而无法读取外部通道的电压现在使用xsysmon.h库里面的函数进行XADC外部通道的电压为了方便观察,增加了PLGPIOKEYLED进行观察1.配置ZYNQ7000勾选FCLK_RESET0勾选UART0,这是BANK电压勾选PS给PL提供的时钟,设置PS的输入时钟......
  • win下使用choco安装docker到E盘,更改默认目录到E盘指定目录, 迁移已安装软件
    一使用Chocolatey安装Docker安装Chocolatey(如果尚未安装):打开命令提示符(以管理员身份运行),输入以下命令安装Chocolatey:@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe"-NoProfile-InputFormatNone-ExecutionPolicyBypass-Command"iex((New-Ob......
  • td设置padding:0后el-table展示不全
    <el-table   ref="table"   class="city-report-table-container"   border   height="100%"   :data="tableData"   :span-method="tableSpanMethod"  ><el-table-columnlabel=&q......
  • SpringBoot 2.3 升级到 SpringBoot 3.3 爬坑 -- HandlerInterceptorAdapter 拦截器无
    SpringBoot2.3升级到SpringBoot3.3爬坑SpringBoot2.3.0->spring-webmvc-5.2.6SpringBoot3.3.4->spring-webmvc-6.1.13HandlerInterceptorAdapter类在SpringFramework的较新版本中已经被废弃。在Spring6.1.13中,应使用HandlerInterceptor接口。HandlerInterc......
  • ReadPilot: 革新网页阅读体验的AI助手
    ReadPilot:让网页阅读更高效、更智能在这个信息爆炸的时代,我们每天都面临着大量的网页内容需要阅读和处理。如何在有限的时间内快速获取关键信息,成为了许多人面临的挑战。ReadPilot应运而生,它是一款革新性的AI网页阅读助手,旨在帮助用户更高效地获取和理解网页内容。ReadPil......
  • 【芯智雲城】Broadcom(博通)光耦合器选型
    Broadcom(博通)的光耦芯片类型丰富,包括用于低速模拟量、故障检测、功率控制等应用普通的模拟光耦,用于各种数字电路的数字光耦,用于IGBT栅极驱动高速低功耗光耦,以及用于电流检测应用的和高线性度隔离放大器。产品具备高隔离性能、高速传输、低功耗和高可靠性等优点,在电子行业中具有......
  • 【芯智雲城】Broadcom博通BCM5389IFBG以太网控制器应用
    Broadcom公司的BCM5389IFBG以太网控制器芯片,适用于独立的千兆以太网交换机和千兆以太网控制平面及背板应用。一、芯片特点集成度高:BCM5389IFBG将数据包缓冲区、SerDes(串行解串器)、媒体访问控制器(MAC)、地址管理和非阻塞交换结构集成到一个0.13µmCMOS器件中,减少了系统的复杂......