从大象讲起——说说各种
数据结构。
范浩强
自我介绍?
● 略吧。
先从大象说起。
● 先不着急说数据结构的事。
● 先从大象那天说起。
● 23rd IOI Day2
和动物在一起的一天。
● 鳄鱼crocodile
● 大象elephant
● 鹦鹉parrot
最“简单”的鹦鹉。
● 为什么说是最“简单”呢?因为用到的数据结构只
有数组。
● 为什么要给“简单”加引号呢?因为它并不简单。
鹦鹉。
● 你有一群鹦鹉。每个鹦鹉可以记住8 个二进制
位,即,一个0 ~255 之间的自然数。
● 你告诉了一些鹦鹉一些数,之后,让它们飞到另
一个人那里。每个鹦鹉忠实地告诉了那个人(接
收者)它记住的数是多少。
● 你想通过这个方法传递一个消息。但是,鹦鹉有
个小问题,就是鹦鹉到达的顺序是随机的。
鹦鹉。
● 例如:
● 你发送了3 只鹦鹉:
● 1 9 9 8
● 到达接收者那里很可能变成了:
● 9 8 1 9
● 你要在这种状况下,通过发送最少个数的鹦鹉来
传递消息。消息可以视作一个N 位的二进制数。
鹦鹉?
● 这题出得不错。。。但是,怎么做呢?
● 主要矛盾:乱序到达?
●
● 想法1 :每个鹦鹉记住自己是第几个(发送位置
码)。
● 每个鹦鹉记住一个数4x+y ,其中y 表示一个2
位的消息(0/1/2/3) ,x 表示这个消息在原文中
的位置。
鹦鹉。
● 0 1 3 1
● = 0 5 11 13
● 到达接收者那里之后
● 5 13 0 11
● 接收者把它们从小到大排序
● 0 5 11 13
● 之后分别模4
● 0 1 3 1 ,很神奇吧。。。
嗯,很和谐。
● 通过这种方法最长能发送多长的消息呢?
● X 的取值是[0,64) ,能最多标记64 个位置,每个位置2 位,
所以最长128 位,即16 字节。
● 如果要发送N 个字节(8N 位)的消息,要用4N 个鹦鹉。
● 这么做有多少分?
● 子任务1 ,2 :很水,一共32 分。
● 子任务3 (18 分)
● N=16
● 鹦鹉数不超过10N
● 哈哈,一共50 分到手了!
鹦鹉?。
● 子任务4 (29 分)
● 1=N=32
● 最多发送10N 只鹦鹉。
● 这个怎么办?
您可能关注的文档
最近下载
- 热点题型·专题04 二次函数与二次函数中的代几综合问题(10类题型)-2025年中考数学二轮热点题型归纳与变式演练(全国通用)(原卷版).docx VIP
- 2024年新高考政治江苏卷试卷试题真题(含答案详解).pdf VIP
- 3D打印成型工艺及材料-全套PPT课件.pptx
- 风电项目整套启动试运行方案.docx VIP
- 插画设计(下篇,共上下两篇).pptx VIP
- 饺子机全程自动化的设计.docx VIP
- Unit 1 Time to relax(复习课件)-2025-2026学年八年级英语下册(人教版2024).pptx
- (高清版)B/T 23479-2023 风力发电机组 双馈异步发电机.pdf VIP
- 2025年江西省综合评标专家库评标专家考试历年参考题库含答案详解.docx VIP
- 施工劳动力安排计划.docx VIP
原创力文档

文档评论(0)