NOIP 初赛笔记
// zj蒟蒻瑟瑟发抖。。
// 停课了。要好好努力!——10月8日8:29于机房
1. 1946 年 美国 -> 第一台计算机
2. 真空电子管 -> 晶体管 -> 集成 -> 大规模集成
3. 字长:8位(8 bit)这种东西 balabala。。
4. 主频:about 运算速度 e.g. pii300 -> 主频300Hz
5. 工厂自动化(FA).
CAD -> design; CAI -> 辅助教学
CAM -> manufacture; EDI -> 电子数据交换(关于无现金交易这样子)
CAT -> test; OA -> office automation;
6. 硬件结构:冯·诺依曼式(美籍匈牙利人) -> 运算器 / 控制器 / 存储器 / 输入(出)设备 => 存储程序的概念
7. 卡特兰数:$C_n=\frac{C^n_{2n}}{n+1}$
用途:1. 长度为 n 的进栈序列 1,2,3,...,n,求出栈种数
2. 在 (n+2) 边凸多边形内连若干不相交的对角线来划分三角形,求问几种?
3. n 个节点排 BST
4. n 对括号内有几种是匹配的?(in 全部情况)
8. 二叉树:$n_0=n_2+1$ 对于k叉树,联立边关系和点关系,也就是$n=n_0+n_1+...+n_k$(点关系)和 $n-1=k*n_k+...+n_1$,于是可推出。
9. 约瑟夫环问题:当n为2的幂次时,最后留下的都是1;当n不是的时候,两个2的幂次之间,留下的人的编号为3,5,7,9,......
k阶约瑟夫问题:O(n) DP :$f(1)=0$; $f(n)=(f(n-1)+k)mod\;n$ 出现0是因为mod的缘故,+1就可以了
| n的值 | 队列 | 活下的人 |
| 1 | 1 | 1 |
| 2 | 1 2 | 1 |
| 3 | 1 2 3 | 3 |
| 4 | 1 2 3 4 | 1 |
| 5 | 1 2 3 4 5 | 3 |
| 6 | 1 2 3 4 5 6 | 5 |
| 7 | 1 2 3 4 5 6 7 | 7 |
| 8 | 1 2 3 4 5 6 7 8 | 1 |
10. 08年提高问题求解T2(21本书选四本,每两本编号不相邻):可有$1\le x_1<x_2-1<x_3-2<x_4-3\le18$,即将不连续的$x_1$,$x_2$,$x_3$,$x_4$映射到[1,18]的连续区间上,也就相当于$C_{18}^4$,故答案为3060.
11. 99年提高:n条折成角的直线,划分平面数目为$2n^2-n+1$。推论:直线分割平面:$\frac{n(n+1)}{2}+1$;封闭曲线(如一般位置上的圆)分割平面:$n^2-n+2$;平面分割空间:$\frac{n^3+5n}{6}+1$。
12. 07年普及:n个数划分r个非空集合,有$S(n,1)=1$; $S(n,n)=1$; $S(n,r)=S(n-1,r-1)+r\times S(n-1,r)$。$S(n-1,r-1)$不用乘系数,因为在向下推的时候已经包含了固定各个数的情况。听说也是第二类斯特林数。
13. 06年提高:三角形路径数目。一种解释是:路径唯一,从倒数第二层到终点有且仅有n-1种方法,再向上同理,为n-2种。根据乘法原理,n层三角形的方案数目是$(n-1)!$
14. x个a,y个b,z个c排字符串,包含子串'abc'的种数:捆一个abc,算全排列;捆两个,减去;捆三个,加上。e.g. 3个a,5个b,3个c,种数:$\frac{9!}{2!4!2!}-\frac{7!}{2!3!}+\frac{5!}{2!3!}$
15. 圆桌问题之相邻不重复。有n个人坐在一张圆桌上吃饭,要求每天每一个人两边相邻的人不同,问这样最多可以安排多少天?如3个人时只能1天,4个人时也只能是1天,而5个人可以安排2天。那么抽象为n个节点的无向图,每一个节点都去和其他所有节点连边,总边数为$\frac{n(n-1)}{2}$,每一天过后都删去n条边,所以得到的结论就是$\lfloor \frac{n-1}{2} \rfloor$
16. 强制类型转换:(类型)(表达式)。事实上,除非表达式是单个变量,否则都要加括号。e.g. (int)x+y 的含义是将x转换为int以后和y相加,与(int)(x+y)的含义是不同的。
17. 由数字1,1,2,4,8,8所组成的不同的四位数的个数是102。算法:不能直接$C^4_6\;A^4_4$然后干嘛干嘛。。正解应当分类讨论
一:①1、1、2、4;②1、1、2、8;③1、1、4、8;④1、2、8、8;⑤1、4、8、8;⑥2、4、8、8这6组,他们的方案数都是$\frac{A_4^4}{2!}$,总的就是$6\times 12$,72种;
二:仅有1、2、4、8组成当然就是4个全排列;
三:1、1、8、8去排;
答案就是$72+24+6=102$。
18. 14提高选择:同时查找2n 个数中的最大值和最小值,最少比较次数为( )。正解:两两比较,大的和max去比,小的和min去比。第一组比较一次得到max和min;后面$2\times (n-1)$个数,两两比较需要$n-1$次,每一个还会去和max/min比较一次,也就是$2\times (n-1)$次,综上,即为$3\times (n-1)+1$次。
19. 应用快速排序的分治思想,可以实现一个求第k大数的程序。假定不考虑极端的最坏情况,理论上可以实现的最低的算法时间复杂度是。。。O(n)!
呃,事实上,在做的时候,分治的另一个区间是可以抛掉的。也就是说,虽然进行了二分,$T(n)=n+\frac{n}{2}+\frac{n}{4}+...$ 因此渐进复杂度为O(n)。
20. 世纪难题:约瑟夫好人坏人version,尚未知道数学解法,无法手算qwq;
21. 对于一个无向图,他不是联通图意味着必定存在一个节点的度为0;对于任何一个图,不存在奇环是其为二分图的充要条件;
22. 任何一个算法的空间复杂度都不大于其时间复杂度;
23. while(1)rp++;
NOIP 初赛笔记的更多相关文章
- NOIP初赛 之 逻辑运算
NOIP初赛 之 逻辑运算 逻辑运算先掌握各种运算,注意运算符的级别比较,做题是要细心.在NOIP中一般一题,分值为1.5分. 概念介绍: 非:not ¬ 与:and ∧ 或:o ...
- NOIP初赛知识点大全-普及+提高组
NOIP初赛知识点大全-普及+提高组 https://mp.weixin.qq.com/s/vSXLDxmbBoFfZPzD8lrt3w
- 史上最全NOIP初赛知识点
CSP-J/S 第一轮知识点选讲 \(NOIP\)(全国青少年信息学奥林匹克竞赛)于2019年取消.取而代之的是由\(CCF\)推出的非专业级软件能力认证,也就是现在的\(CSP-J/S\).作为一名 ...
- NOIp初赛题目整理
NOIp初赛题目整理 这个 blog 用来整理扶苏准备第一轮 csp 时所做的与 csp 没 有 关 系 的历年 noip-J/S 初赛题目,记录了一些我从不知道的细碎知识点,还有一些憨憨题目,不定期 ...
- NOIP初赛:完善程序做题技巧
最近写的文章好像还很多的.那么今天我们来讨论NOIP初赛的题型--完善程序.完善程序相对是比较难的题目了.全卷100分,完善程序占了大概26分,占比非常大.如果和英语考试试卷做比较,相当于首字母填空( ...
- NOIP初赛前一日记
2018年10月12日,早晨7:25于机房. 早晨的鄞中,晨风还有点清冷.看着电脑上翻遍的资料,心里实在是有一种说不出的感觉. 说出来也算是丢脸——作为浙江选手,我为了NOIP2018的初赛,停课了一 ...
- NOIP初赛 之 哈夫曼树
哈夫曼树 种根据我已刷的初赛题中基本每套的倒数第五或第六个不定项选择题就有一个关于哈夫曼树及其各种应用的题,占:0-1.5分:然而我针对这个类型的题也多次不会做,so,今晚好好研究下哈夫曼树: 概念: ...
- NOIP初赛知识点
http://www.doc88.com/p-9982181637642.html 连载中…… (一)八大排序算法 下面这张表摘自博客http://blog.csdn.net/whuslei/arti ...
- NOIP初赛 BLESS ALL!
祝初赛顺利!RP++! 下午再写一篇题解来加RP
随机推荐
- UVA - 10494 If We Were a Child Again
用java写的大数基本操作,java要求的格式比较严谨. import java.util.*; import java.math.*; public class Main { public stat ...
- 【leetcode 简单】第二十一题 相同的树
给定两个二叉树,编写一个函数来检验它们是否相同. 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的. 示例 1: 输入: 1 1 / \ / \ 2 3 2 3 [1,2,3], [1 ...
- 读书笔记 ~ Nmap渗透测试指南
记录Nmap选项及脚本使用,仅供参考... 除了端口扫描,好像其它脚本都比较鸡肋,用途感觉应该没有专用的小工具好用,不过还是可以看看,选项和脚本还是相当的丰富的. Nmap 使用帮助 starnigh ...
- 2、java语言基础
1.关键字 被Java语言赋予特定含义的单词被称为关键字关键字都是小写的在Java开发工具中,针对关键字有特殊颜色的标记 2.标识符 Java标识符命名规则 ·标识符是由,数字,字母,下划线和美元符号 ...
- win10-idea2018
下载jar JetbrainsCrack-2.9-release-enc.jar idea64.exe.vmpotions 配置 -javaagent:D:\devsoft\idea\bin\Jetb ...
- 安装JDK环境变量的配置
设置环境变量 在java中需要设置三个环境变量(1.5之后不用再设置classpath了,但是个人强烈建议继续设置以保证向下兼容问题) JDK安装完成之后我们用来设置环境变量:右击”我的电脑“,选择” ...
- javascript反混淆之packed混淆(一)
javascript反混淆之packed混淆(一) 什么是JavaScript反混淆,在理解这个概念前我们先来看下什么是代码混淆,代码混淆,是将计算机程序的代码,转换成一种功能上等价,但是难于阅读和理 ...
- 安装Https证书
安装证书 IIS 6 支持PFX格式证书,下载包中包含PFX格式证书和密码文件.以沃通证书为例: 文件说明: 1. 证书文件214083006430955.pem,包含两段内容,请不要删除任何一段内容 ...
- ../include/squid_md5.h:27:2: error: #error Cannot find OpenSSL MD5 headers【squid安装中】
../include/squid_md5.h:27:2: error: #error Cannot find OpenSSL MD5 headers yum install -y openssl* w ...
- 清理oracle的用户中的日志垃圾以及修改sys用户的密码
清理oracle的用户中的日志垃圾1.进入:/opt/oracle/product/11g/network/admin目录2.注释掉listener.ora文件中的TRACE_LEVEL_LISTEN ...