NOIP2018 No regrets youth

时间:2022-08-28 09:40:46

NOIP2018在即,20181009总结一些易错的知识点和解题方法

——by ljc20020730 HGOI

  • NOIP2018 No regrets youth !
  • NOIP2018 No regrets youth !
  • NOIP2018 No regrets youth !

解题方法概述

  • 选择题(总分15+5共30分)

目标得分: 25.5 

时间控制:25 min

解题方法:

  1. 注意审题(如NOIP2016 T2 别把CapLock当作输出),仔细解答
  2. 程序模型题看清楚算法思想,保证拿分
  3. 树的题目尽量带特殊数据,加快解题速度
  4. 抓住题目关键性字眼,如非联通,正确还是错误,有关还是无关,包括和不包括,是还是不是,行优先还是列优先,
  5. 关注选项的互译性,意思相同的选项作为单选题尽量不要斟酌
  6. 分清楚一些已经错过的题目如插入排序和选择排序的原理问题,sin(sin(x))不是递归,二次探测的意思,散列的意思,子串包含空串
  7. 注意控制答题时间以免后面的大题分数没有仔细斟酌,这里其实并拉不开差距
  8. 一些斟酌的计算机基础知识的题目一定一定要专注于第一选项
  9. 实在不行统计ABCD一般来说ABCD选项都是较为平均的分配的
  10. 简单数学题不要花费大量时间注意采用验证法和归谬法和特殊值法来做(一定要看Master 算法)
  •  问题解决题(2题,共10分)

目标得分: 5-10

时间控制:20 min

注意一些常用的数学递推结论,

  1. 卡特兰数列(C(2*n,n)/(n+1))
  2. 错排递推式f(n)=(n-1)*(f(n-1)+f(n-2),f(1)=0,f(2)=1)
  3. 等比数列求和公式 (an=a1*q^(n-1),S=a1(1-q^n)/(1-q))
  4. 第二类斯特林数(n个不同的球,放入m个无区别的盒子,不允许盒子为空,S(n,m)=S(n-1,m-1)+m*S(n-1,m))
  5. 重排列公式(a1+a2+a3...+an)!/(t1!*t2!*t3!...*tn!)
  6. 第二类斯特林数的pascal三角
         1    2     3    4    5     6    7    8
    1 1
    2 1 1
    3 1 3
    4 1 7 6 1
    5 1 15 25 10 1
    6 1 31 90 65 15 1
    7 1 63 301 350 140 21 1
    8 1 127 966 1701 1050 266 28 1   7. 问题解决不一定是组合数,在情况复杂的情况下找找规律,不要急于暴
  8. 不会做想Dp,比如一些n个苹果放到m个盘子里,考虑这样一个递推:
int f(int m,int n)
{
if (m==||n==) return ;
if (m<n) return f(m,m);
if (m>=n) return f(m,n-)+f(m-n,n);
}

对于一些最少最多的题目好好想想反例千万不要急于下笔,一般来说最值问题答案都是和第一次算出来的答案不相符合(真的没有更多了嘛?有没有反例?)
对于结论题千万不要相信自己第一次猜出的结论积极找反例
暴力枚举讲究方法有次序(如NOIP2017 T2暴力枚举上边和下边出错几率比较小)

  • 阅读程序题(共4题共32分)

目标得分:32

时间控制:35 min

  1. 对于简单题千万不要大意在这里丢分基本复赛没戏(我易人易,我难人难)
  2. 注意隐藏在模拟条件中的优先级别(先算and再算or,xor)和取模运算(a%b=c中c的符号永远和a的符号相同)的事情
  3. 注意列表法尽量保证第一遍就算对,对于不确定的复杂的推算的题目一定不能盲目找规律,尽量多推几遍,减少失误
  4. 猜测题目的意思如最小生成树、dijkstra算法最短路、哈密顿路径(找一条路径使每个节点恰好出现一次)
  5. 通过小样例模拟推大数据(找一些线性规律)
  6. 递归题目细心算列树形图
  7. 一些经典的问题:排序算法、约瑟夫问题(Jq(n+1) = ( Jq(n) + q ) / (n+1))
  8. 特征方程:

    f(0),f(1)已知 f(n)=c1*f(n-1)+c2*f(n-2) , 求出f(n)通项公式

    解出  x2-c1*x-c2 = 0 的解 x1 和 x2

    若 x1=x2 那么 f(n)=(A+B*n)*x1n

    若 x1!=x2 那么 f(n)=A*x1n+B*x2n

  • 程序填空题(共28分)

目标得分:24

时间控制:30 min

  1. 第1遍能填的填保证简单的填对
  2. 第2遍根据算法思想推敲或者模拟计算规律或者根据数据结构做一定的操作
  3. 关注初始化和条件语句(可以参考上下文),注意调用时参数的问题要仔细考虑
  4. 分值特别标明的空格要格外当心
  5. 第3遍一定一定要重新理清思路检查一遍
  • 考场策略
  1. 带(*)纯净水、餐巾纸、铅笔、橡皮、水笔、准考证
  2. 提前半个小时一定要到达考场提早进入状态
  3. 考试之前不要剧烈运动,最好做几道信心题或者复习错题
  4. 减少答题时的干扰比如喝水、上厕所
  5. 做好后一定要重点检查阅读程序和问题解决,尽量减少这里的失分

干货概述

  • 选择题

1. *和 +或

2. 优先级 :F(c) () ; ~!; 算术运算; 按位移动; 关系; 位运算(与,或、异或); 逻辑运算;

3. +0 和 -0 : 原码不一样反码不一样补码一样 : -128特殊:只有补码

4. Char的范围[-128,127]

5. 无符号 [0,255]  00000000 11111111

6.定点数和浮点数

定点数(占据一个小数位数)

浮点数(科学计数法表示)

N=2^E*S(S是尾码,E是阶码)

整个数的符号看S

精度看S,大小看E的位数

64位浮点数转为32位浮点数

大小不一定;符号一定

7.逻辑运算: 列真值表

8.计算机存储单位:

b,B,KB,MB,GB,TB,PB,EB(没SB)

bps == bit/s

Kbps == Kbit/s

Mbps== Mbit/s

(不要混用注意文件单位是B,时间先算后要乘以8)

9.排序问题

最小比较次数 [log_2 n!] 上取整

交换相邻两数最小交换册数 逆序对个数

任意交换元素 找置换环个个数K 答案是(n-K)

移动?最长上升子序列

10.查找问题

二分查找 l+r 整除2 [l+1,mid] 和 [mid+1,r-1]

线性探测每次下标+1

二次探查法+1 -1 +4 -4 +9 -9 (以原来位置为基准)

二叉排序树 : 左小右大

Huffma 两个数一个是一个数的前缀就是不合法的Huffma编码

11.图

图的性质:

有向图:入度等于出度

无向图:度数等于边数*2,所以度总数不是奇数

最短路上所有经过的都是最短的路径

平面图:所有点线都在同一平面上

欧拉公式:G是联通的平面图,节点数为n边数为e,面数为r那么n-e+r=2

哈密尔顿图:经过每个点仅一次,存在一条路径就是哈密尔顿图

判断哈密尔顿图:没有必要条件

WP着色法: 每次找度数最大而未找色的着一种颜色,(判断相邻不同色贪心)

二分图都有而且有就能推出 :所有回路都是偶数(无奇环)

12.计算时间复杂度的方法

【重点】Master 定理

NOIP2018 No regrets youth

13.N.NP.NPC问题

多项式复杂度:n在底数上

P:在多项式时间复杂度内可以完全解决的问题

NP:在多项式时间复杂度可以验证一个可行解的问题(包含P问题)

NPC:在NP问题中挑选出来的一些经典问题,如解决一个 NPC=P 那么就可以推出NP=P的问题

14.网络协议

TCP/IP 4;OSI 7

应用层协议 HTTP FTP SMTP DNS

传输层协议 TCP UDP

网络层协议 IP ARP

数据链路层协议 (None)

15. IPv4 地址

A类地址 1个字节表示 网络标识(第1位是0后面7位存2进制) 后面3个字节表示主机的号码 地址范围: 0.0.0.0 --- 127.255.255.255 网络数:128个,每个网络的主机数2^24

【特殊地址:127.*.*.* 本机地址 10.*.*.* 本地网络】

B类地址前2个字节为 网络标识(第1,2位分别为1,0),后2个字节表示主机号码

IP到掩码 “与“ 操作

1000,0000,0000,0000(B) – 1011,1111,1111,1111(B)

128.0.0.0-191.255.255.255

【特殊地址:172.*.*.*】

C类地址前3个字节为 网络标识(第1,2,3位分别为1,1,0),后2个字节表示主机号码

192.0.0.0-223.255.255.255

【特殊地址:192.168.*.*】

出现DE不要选了不常见!

【特殊地址:网络本身 0.0.0.0 子网广播地址255.255.255.255】

IPv6 128

16.网络接入

集线器:分;交换机:共享 (物理层、数据链路层)

路由器:自动拨号自动寻址(网络层)

  • 问题解决题
  1. 分治法(找规律)
  2. 博弈游戏的模型

    A. Bash Game 多堆石子在一堆取取[1,x]颗

      考虑一堆(a):a=n(x+1)其中n为Z那么先手必输;a=n(x+1)+r 先手必胜

      考虑若干堆 ai {1<=i<=n} 偶数堆必胜那么先手必败,奇数堆必胜那么先手必胜

      考虑异或和是为1 那么先手必胜,否则先手必败

      策略让对手面临必败的境遇

    B. Wythoff Game 两堆,从一堆至少取1或者两堆同取相同

      (0,0)先手必败 (0,1) 先手必胜

      (1,2)先手必败

      规律:差值规律0,1,2,3,4… 如(0,0) (1,2) (3,5) (4,7) (6,10) 等

(x,x+d) 若为必败局 则 x=(sqrt(5)+1)/2 * d

      强制类型double->int 是向0取整

3. 抽屉原理:贪心

4. 容斥原理: 每次减去重复加上再重复的(repeat)

    错排公式:D(1)=0,D(2)=1,D(n)=(n-1)(D(n-1)+D(n-2)) {n>=3}

5. 组合数学: n中取r个排列 P(n,r) ;n 中取r圆排列 P(n,r)/r )

        n中取r个组合 C(n,r)

          r个相同的小球放到n个不同的盒子里排列H(n,r)=C(n+r-1,r)

  •       捆绑法:相邻排列作为整体考虑
  •       插入法:排好没有限制的元素,有不相邻限制的插入
  •       排异法:求出反面,然后从整体中排除

          例题:正六边形中心和定点取3个点为顶点的三角形数目C(7,3)-3

  •       优先法:有特殊条件的元素或位置优先安排
  •       分类讨论法(考虑分步插入):多元问题不重不漏
  •       先选后排法: 适合排列组合混合问题
  •       隔板法:名额分配、相同物品的分配问题

6. 递推:小规模推到大规模

做不出来组合题、数据结构题想想Dp

7. 数列:

  • 汉诺塔问题H(n)=2h(n-1)+1  h(1)
  • 平面分割问题:满足二次函数
  • 卡特兰数列:通项公式 C(2n,n)/(n+1)

适用:二叉树n形态;总数n*n从左上角走到右上角有多少种走法;

n个元素入栈出栈可能;n个0和n和1排成不同组合数

  • 第二类斯特林数:n个人分成m组S(n,m)=S(n-1,m-1)+m*S(n-1,m)

8. 网络流/最小割/最大流 最大流=最小割 (注意千万求最大流的时候用最小割,有损耗)

对偶图(面编号上下加序号有边相邻的互联得到对偶图求出最短路径就是最小割,最短路奇数就行)

9. 平面图和欧拉定理 :G是联通的平面图,节点数为n边数为e,面数为r那么n-e+r=2

10. 概率论 : 穷举(决策树)

    乘法定理: 记 P(B|A)在A发生的条件下发生B的概率

     P(AB)=P(A|B)*P(B)=P(B|A)*P(A)

    全概率公式: P(A)=singma(i=1;n; ABi) 其中Bi是A的划分 P(A)=singma(i=1;n; P(A|Bi)*P(Bi))

11. 数学期望:概率加权平均值 总能得到的价值/样本总空间

12. 小球放盒子的情况讨论

  • n个不同小球放r个不同的盒子 r^n (允许出现空盒)
  • n个不同小球放r个不同的盒子 r!* S(n,r) (不允许出现空盒)
  • n个不同小球放到r个相同的盒子里(不出现空盒) 第二类斯特林数S(n,r)
  • n个不同小球放到r个相同的盒子里(允许出现空盒) singma{k=1;k<=r;S(n,k)}
  • n个相同的小球放到r个不同的盒子里 (允许出现空盒) 隔板法求x1+x2...+xr=n 非负整数解的个数 C(n+r-1,r-1)
  • n个相同的小球放进r个不同的盒子里(不允许出现空盒)

    先选出r个放入每个盒子里保证空盒不存在 余下(n-r)个小球放r个不同的盒子里
     然后用上述讨论方法。 C((n-r)+r-1,r-1)=C(n-1,r-1)

  • n个相同的小球放进r个相同的盒子里(不允许出现空盒)

    我们设答案是Pr(n)
    可以求出Pm(n)

int f(int m,int n)
{
if (m==||n==) return ;
if (m<n) return f(m,m);
if (m>=n) return f(m,n-)+f(m-n,n);
}

    或者
    令P1(n)=1 Pn(n)=1
    P2(n)=[n/2]
    Pr(n)=singma(k=1;k<=r;Pk(n-r))
    答案就是Pr(n)

   转化:n分解成若干个数和的情况总和数目 

  • n个相同的小球放进r个相同的盒子里(允许出现空盒)求出 Pr(n+r)

     转化:你分解成m个(m-1)个(m-2)个....1个数的所有总数之和

  • NOIP2018 No regrets youth !
  • NOIP2018 No regrets youth !
  • NOIP2018 No regrets youth !

NOIP2018 No regrets youth的更多相关文章

  1. Bittersweet——NOIP2018 游记

    p { font-size: 16px; line-height: 1.5em; } blockquote { font-family: 'Times New Roman', 楷体; text-ali ...

  2. Youth -Samuel Ullman

    Samuel Ullman(塞缪尔.厄尔曼) Youth is not a time of life,it is a state of mind;青春不是年华,而是心境: it is not a ma ...

  3. Youth&lpar;青春&rpar;

    Youth is not a time of life; it is a state of mind; it is not a matter of rosy cheeks, red lips and ...

  4. NYOJ-914 Youth的最大化(贪心)

    Youth的最大化 时间限制:1000 ms | 内存限制:65535 KB 难度:4 描述 Yougth现在有n个物品的重量和价值分别是Wi和Vi,你能帮他从中选出k个物品使得单位重量的价值最大吗? ...

  5. &lbrack;题解&rsqb;NOIP2018(普及组)T1标题统计(title)

    NOIP2018(普及组)T1标题统计(title) 题解 [代码(AC)] #include <iostream> #include <cstdio> #include &l ...

  6. NOIP2018:The First Step

    NOIP2018 RP=Ackermann(4,3) Day 0 日常不想做题也不知道要写什么qwq Day 1 接到$smy$巨佬的催更私信于是来更了(原本准备咕掉的) 最开始的策略是准备总览题目, ...

  7. NOIP2018普及初赛解析

    2018年第二十四届全国青少年信息学奥林匹克联赛初赛普及组真题解析 一.单项选择题 1. 以下哪一种设备属于输出设备:(D) A.扫描仪 _B.键盘C. 鼠标 _D. 打印机 解析:送分题,前三个都是 ...

  8. NOIP2018 游记 QAQ

    写在前面: 本人初三党.NOIP前两个月不好好停课搞信竞愣是要搞文化课.于是,期中考与NOIP一起凉凉[微笑] 本人写的第一篇NOIP游记,各位大佬们随便看一看就好 Day -n 初赛71,竟然跟wx ...

  9. NOIP2018总结

    细细想来,学习OI也有4年多的时间了,今年已经是第二次参加noip提高组了,有必要写点什么了 NOIP2018 记得在天刚蒙蒙亮的时候走进70中,这是第四次了,但紧张只增不减,在刺骨的寒风下身体微微发 ...

随机推荐

  1. &lpar;十一&rpar;Maven远程仓库的各种配置

    1.远程仓库的配置 在平时的开发中,我们往往不会使用默认的*仓库,默认的*仓库访问的速度比较慢,访问的人或许很多,有时候也无法满足我们项目的需求,可能项目需要的某些构件*仓库中是没有的,而在其他 ...

  2. 线程池pool

    参考链接 http://www.open-open.com/lib/view/open1415453575730.html 参考配置 http://www.cnblogs.com/linjiqin/a ...

  3. windows 下安装Yii2 高级版本

    1.  首先安装 Composer 2.  执行  composer global require "fxp/composer-asset-plugin:~1.1.1" 3. 执行 ...

  4. linux下的module&lowbar;param&lpar;&rpar;解释【转】

    转自:http://blog.csdn.net/wavemcu/article/details/7762133 版权声明:本文为博主原创文章,未经博主允许不得转载. ***************** ...

  5. MySQL语句进行分组后的含有字段拼接方法

    MySQL语句: SELECT GROUP_CONCAT(DISTINCT transaction_no) FROM `lm_wh_trans` GROUP BY staff_code; 如果tran ...

  6. 100天成就卓越领导力:新晋领导者的First100训练法

    <100天成就卓越领导力:新晋领导者的First100训练法> 基本信息 原书名:Your Frist 100 days: How to Make Maximum Impact in Yo ...

  7. redis的安装与配置

    官网 http://redis.io/download 管理工具 http://docs.redisdesktop.com/en/latest/quick-start/ https://redisde ...

  8. JavaScript判断图片是否加载完成

    一.load事件 <!DOCTYPE HTML><html> <head>     <meta charset="utf-8">   ...

  9. ckeditor文本对齐方式添加,图片上传

    最近用的AdminBSBMaterialDesign-master模板,里边用到了ckeditor编辑器 但发现里边没有基本的文本对齐方式,找了好一会,好多方法都不管用,最后在config.js中添加 ...

  10. VS2017 C&sol;C&plus;&plus;输入密码显示&ast;星号

    VS2017  C/C++输入密码显示*星号 _getch()函数使用时遇到的坑 参考: https://blog.csdn.net/guin_guo/article/details/46237905 ...