NOIP 提高组 初赛 三、问题求解 习题集(四)NOIP2010-NOIP2015
1.第十六届(NOIP2010)
问题:
1.LZW编码是一种自适应词典编码。在编码的过程中,开始时只有一部基础构造元素的编码词典,如果在编码的过程中遇到一个新的词条,则该词条及一个新的编码会被追加到词典中,并用于后继信息的编码。
举例说明,考虑一个待编码的信息串:“xyx yy yy xyx”。初始词典只有3个条目,第一个为x,编码为1;第二个为y,编码为2;第三个为空格,编码为3;于是串“xyx”的编码为1-2-1(其中-为编码分隔符),加上后面的一个空格就是1-2-1-3。但由于有了一个空格,我们就知道前面的“xyx”是一个单词,而由于该单词没有在词典中,我们就可以自适应的把这个词条添加到词典里,编码为4,然后按照新的词典对后继信息进行编码,以此类推。于是,最后得到编码:1-2-1-3-2-2-3-5-3-4。
我们可以看到,信息被压缩了。压缩好的信息传递到接受方,接收方也只要根据基础词典就可以完成对该序列的完全恢复。解码过程是编码过程的逆操作。现在已知初始词典的3个条目如上述,接收端收到的编码信息为2-2-1-2-3-1-1-3-4-3-1-2-1-3-5-3-6,则解码后的信息串是”____________”。
2.无向图G有7个顶点,若不存在由奇数条边构成的简单回路,则它至多有__________条边。
3.记T为一队列,初始时为空,现有n个总和不超过32的正整数依次入列。如果无论这些数具体为何值,都能找到一种出队的方式,使得存在某个时刻队列T中的数之和恰好为9,那么n的最小值是___________。
问题解答:
1.思考过程如图所示:
答案:yyxy xx yyxy xyx xx xyx
此题思想与《算法竞赛入门经典(第2版)》P115例题5-5集合栈计算机 类似。
1简单
2.有两种做法:
http://baoby2000.blog.163.com/blog/static/19973991201282491226645/
http://blog.sina.com.cn/s/blog_62d8450c0100x138.html个人比较青睐此种。
思考过程如图所示:
答案:12
找到第3种做法:http://www.docin.com/p-501877626.html
2难
3.题意有些难懂:是指在数字尽可能取小,n尽可能长的情况下,符合题意的最大n值。
位置 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
数值 1 1 1 1 1 1 1 1 (10) 1 1 1 1 1 1 1 1
前缀和1 2 3 4 5 6 7 8 18 19 20 21 22 23 24 25 26
位置9取值是10的原因是,起刁难作用,让数组元素前缀和尽量的达不到9.
有因为,总的前缀和是32,故位置9的最小取值是10.
位置10开始,都用尽可能小的正数,故1最理想。
可以设置数据到数组的第17位元素,此时还是无法打成某段前缀和是9.
和是32,前17位已经用去了26,还剩下6,故第18位可以获得的数据是1,2,3,4,5,6
若第18位数值是1,
位置10 11 12 13 14 15 16 17 18
数值1 1 1 1 1 1 1 1 1
位置10到位置18可以构成和值为1+1+1+1+1+1+1+1+1=9.
若第18位数值是2,
位置11 12 13 14 15 16 17 18
数值1 1 1 1 1 1 1 2
位置11到位置18可以构成和值为1+1+1+1+1+1+1+2=9.
若第18位数值是3,
位置12 13 14 15 16 17 18
数值1 1 1 1 1 1 3
位置11到位置18可以构成和值为1+1+1+1+1+1+3=9.
若第18位数值是4,
位置13 14 15 16 17 18
数值1 1 1 1 1 4
位置11到位置18可以构成和值为1+1+1+1+1+4=9.
若第18位数值是5,
位置14 15 16 17 18
数值1 1 1 1 5
位置11到位置18可以构成和值为1+1+1+1+5=9.
若第18位数值是6,
位置15 16 17 18
数值1 1 1 6
位置11到位置18可以构成和值为1+1+1+6=9.
很明显,在极端条件下,符合题意的n值,是18.
3.解析来自:http://www.docin.com/p-501877626.html
3难
2.第十七届(NOIP2011)
问题:
1.平面图是可以画在在平面上,且它的边仅在顶点上才能相交的简单无向图。4个顶点的平面图至多有6条边,如右图所示。那么,5个顶点的平面图至多有______条边。
2.定义一种字符串操作,一次可以将其中一个元素移到任意位置。举例说明,对于字符串”BcA”,可以将A移到B之前,变成字符串”ABC”。如果要将字符串”DACHEBGIF”变成”ABCDEFGHI”,最少需要________次操作。
问题解答:
1.5个顶点,无向图边数C(5,2)=10。该题不可能有这么简单,5分一道,重读题目,发现:它的边仅在顶点上才能相交的简单无向图。直接手工画,因为答案最多10条边,画出如下图:
答案:9
2.
该题读下来,有诸多的想法,故例子能举的字符再多点,更好,如果读懂题意,该题不难,该题难在读懂出题人意图。
如图所示,需要移动的有DHBF,故答案为4
还可以考虑其它情况,但上述情况移动次数最少。
3.第十八届(NOIP2012)
问题:
1. 本题中,我们约定布尔表达式只能包含p,q,r三个布尔变量,以及“与“(^)、”或“(v)、”非“(~)三种布尔运算。如果无论p,q,r如何取值,两个布尔表达式的值总是相同,则称它们等价。例如,(pVq)Vr和pV(qVr)等价,pV~p和~qVq也等价,而pVq和p^q不等价。那么,两两不等价的布尔表达式最多有_______个。
2.对于一棵二叉树,独立集是指两两互不相邻的节点构成的集合。例如图1有5个不同的独立集(1个双点集合,3个单点集合,1个空集),图2有14个不同的独立集,那么,图3有_____________个不同的独立集。
问题解答:
1.来自:http://www.091edu.com/news/view/id/293
对于p、q、r三个变量,每个变量可取0,1两种取值,共有8种组合。
对于每种组合,代入表达式只有0和1两种答案。
因此两两不等价的表达式只有2^8=256种。
画图理解如上。
1难 难在理解,排列组合。
2.来自:http://www.091edu.com/news/view/id/293
设 m(i)为以i个为根结点的树的独立集总个数
f(i)为选i的总个数
g(i)表示不选i的总个数,显然有
m(i)=f(i)+g(i)
对于二叉树,
如果根节点选,则儿子节点不能选,有
f(i)=g(left_child[i])*g(right_child[i])
如果根节点不选,则解与根节点无关,直接为左右儿子的解相乘,有
g(i)=m(left_child[i])*m(right_child[i])
具体用动态规划求解如下(计算的时候是从下往上算,这里设树的节点总数为根节点编号),显然该题就是求m(17),
m(17)=f(17)+g(17)=1936+3600=5536
f(17)=g(8)*g(8)=44*44=1936
g(17)=m(8)*m(8)=60*60=3600
m(8) =f(8)+g(8)=16+44=60
f(8)=g(1)*g(6)=1*16=16
g(8)=m(1)*m(6)=2*22=44
m(6)=f(6)+g(6)=6+16=22
f(6)=g(1)*g(4)=1*6=6
g(6)=m(1)*m(4)=2*8=16
m(4)=f(4)+g(4)=2+6=8
f(4)=g(1)*g(2)=1*2=2
g(4)=m(1)*m(2)=2*3=6
m(2)=f(2)+g(2)=3
f(2)=g(1)=1
g(2)=m(1)=2
m(1)=2
f(1)=1
g(1)=1
4.第十九届(NOIP2013)
问题:
1. 某系统自称使用了一种防窃听的方式验证用户密码。密码是 n 个数 s1, s2, …, sn,均为 0
或 1。该系统每次随机生成 n 个数 a1, a2, …, an,均为 0 或 1,请用户回答(s1a1 +s2a2 + …
+ snan)除以 2 的余数。如果多次的回答总是正确,即认为掌握密码。该系统认为,即使 问答的过程被泄露,也无助于破解密码——因为用户并没有直接发送密码。
然而,事与愿违。例如,当 n = 4 时,有人窃听了以下 5 次问答:
问答编号 | 系统生成的 n 个数 |
掌握密码的用户的回答 | |||
a1 | a2 | a3 | a4 | ||
1 | 1 | 1 | 0 | 0 | 1 |
2 | 0 | 0 | 1 | 1 | 0 |
3 | 0 | 1 | 1 | 0 | 0 |
4 | 1 | 1 | 1 | 0 | 0 |
5 | 1 | 0 | 0 | 0 | 0 |
就破解出了密码 s1 = ,s2 = ,s3 = ,s4 = 。
2.
现有一只青蛙,初始时在 n 号荷叶上。当它某一时刻在 k 号荷叶上时,下一时刻将等概 率地随机跳到 1, 2, …,k号荷叶之一上,直至跳到 1 号荷叶为止。当n= 2 时,平均一共 跳 2 次;当 n = 3 时,平均一共跳 2.5 次。则当n = 5 时,平均一共跳 次。
问题解答:
1.此题比较简单,答案:0 1 1 1
2.一直在想n=3,第1次跳到2,2跳到1,2,3的情况,在网上搜了半天,再重新看题,才发现自己题目看错了。
正解:n=3,第1次跳到2,2只能跳到1,2。当它某一时刻在 k 号荷叶上时,下一时刻将等概 率地随机跳到 1, 2, …,k号荷叶之一上。
此题不复杂:
n=2,初始时在2上
跳1次,可能到1,也可能到2
f(2)=1+(f(1)+f(2))/2 一直在1上纠缠了很长时间,1是指跳1次。
f(2)=2
n=3,初始时在3上
跳1次,可能到1,2,3
f(3)=1+(f(1)+f(2)+1+f(3))/3
f(3)=2.5
n=4,初始时在4上
跳1次,可能到1,2,3,4
f(4)=1+(f(1)+f(2)+f(3)+f(4))/4
f(4)=17/6
n=5,初始时在5上
跳1次,可能到1,2,3,4,5
f(5)=1+(f(1)+f(2)+f(3)+f(4)+f(5))/5
f(5)=37/12
答案:37/12
http://www.docin.com/p-963170477.html解法比较详细
5.第二十届(NOIP2014)
问题:
1.由数字1,1,2,4,8,8所组成的不同的四位数的个数是 。
2.如图所示,图中每条边上的数字表示该边的长度,则从A到E的最短距离是 。
问题解答:
1.
2.
6.第二十一届(NOIP2015)
问题:
1.在1和2015之间(包括1和2015在内)不能被4、5、6三个数任意一个数整除的数有 个。
2.结点数为5的不同形态的二叉树一共有 种。(结点数为2的二叉树一共有2种:一种是根节点和左儿子,另一种是根节点和右儿子。)
问题解答:
1.答案1075
容斥原理
2015-2015/4-2015/5-2015/6+2015/20+2015/12+2015/30-2015/60=1075
容斥原理不懂的,建议学习此文https://blog.youkuaiyun.com/mrcrack/article/details/80562324第16讲内容:第6章 容斥原理及应用
2019-2-15 22:55