noip考点整理(应该不是很完整……)
部分来自百度百科、其他的博客
一、必须会的
1.暴力:
DFS、BFS、灌水法搜索、回溯搜索、记忆化搜索、启发式搜索、最优性剪枝、可行性剪枝
2.贪心
3.模拟
4.骗分
二、基础算法
1、图论:SPFA、Floyd、Dijkstra、Tarjian、topo排序、Prim、Kruskal
欧拉(回)路、哈密顿回路
2、树:并查集、堆、线段树/树状数组、LCA
3、分治:二分查找、二分答案、求逆序对
4、数论:GCD、BSGS、扩展欧几里得求同余方程、Catalan数、快速幂、快速乘法、差分约束、筛素数
5、字符串:回文串的判定、KMP、hash
6、动态规划:背包、线性DP、区间DP、环形DP等等
7、二分图匹配:匈牙利算法
8、高精度
考试策略:
1.考试开始前,调界面,写模板,写头文件,测试dev是否可用
2.看题目时注意数据范围,时限,仔细,不要猜测出题目没有说明的affairs
3.关于数据范围..
20:O(2^n),搜索
100:O(n^3),Floyed/搜索
1000:O(n^2),动态规划/spfa/最小生成树
500000:O(nlogn),二分答案/快排/线段树/st表/树链剖分/遍历(DFS可能爆栈)
1000000:O(n)或O(1),数学问题/改变思维方向/贪心/kmp/dp
当然只是一般情况下...
4.long long一定注意在传递参数和快速幂中不要开漏了...
还有数论题目
“三年OI一场空,不开longlong见祖宗”
5.以及最近经常把头文件写错(忘记写iostream,忘记写stdio.h之类的...)
6.写代码前想好,能够证明最好证明,否则多出几组特殊数据测试
7.想好需要的每一个函数再开始写,并估算好时间空间复杂度
8.永远不要尝试不熟悉的算法orz...
9.一定要写对拍...
10.千万不要在最后15分钟改代码必错无疑百发百中
11.绝对不要对答案被虐无疑
12.写完一题检查一题,不要赶时间去做T3,保证前两题的正确性,T3除非是遇到了会写的算法,不要思考超过15分钟,直接写骗分
13.写完之后再留45min再检查,数据测试,阅读代码,查看细节
14.查看文件名,有没有把暴力程序交成正解
15.前两题想不出来调不出来不要慌张,根据时间和难度判断好是否继续写继续调,或者先写第三题,,决定之后不要犹豫,不要患得患失
16.避免day1认真day2水
17.检查时,对于学过的知识再过一遍,看看有没有漏掉简单的算法或者小的优化
18.输入换行符的处理
19.看清评测系统,按评测系统选择用lld还是%I64d
20.DFS函数记得写return
21.变量名如time屡错不爽...
22.把memset,memcpy写在for或者dfs里面忘记算复杂度....
23.cout,cin输出不是必须(bignum)不要用,有TLE的风险
比赛常见问题总结
问题:
1、对于noip模拟:前两题在会的情况下码速不够,直接断送第三题的高分机会。
2、偶尔会有没判0、爆栈等丢个5分10分的错误,偶尔会有
3、看到一道题好像会做,一激动就把时间全花在上面了。
4、临近结束,一慌起来,连暴力都不会打。
5、由于时间复杂度估计错误而导致正解不敢打。
6、由于多余的变量查看、数据画图过多等多余步骤引起的时间浪费。
措施:
1、适当提高一点码速,打代码时保持清醒的头脑,时刻明确自己正在干什么、自己要干什么。
2、选择最恰当的方法来码。那句话说得好:“每多一行代码,就多一次把 i 打成 j 的机会。”方法以正确、简洁为优,冗余代码一定去除。
3、多方法调试。眼调、输出调、拍、各种小数据测。时刻警醒拍真的不是万能的。
4、控制好情绪,看题不激动,结束不慌张。深呼吸,念“南无地藏王菩萨”。
5、要有梦想。打目前想到的最优的方法,无论能否过(如果是暴力要顺手加优化)。注意各个版本的程序的存档。
6、出了bug先整体感知,不要一上来就断点。
noip考点整理(应该不是很完整……)的更多相关文章
- NOIP考点
NOIP考点 基础算法 图 树 数论 数据结构 动态规划 搜索 其他算法 省选知识点汇总 图论 数据结构 字符串相关算法及数据结构 数学 计算几何 搜索 动态规划 其他算法 转自:巨佬的博客 加*号是 ...
- 在WebBrowser中执行javascript脚本的几种方法整理(execScript/InvokeScript/NavigateScript) 附完整源码
[实例简介] 涵盖了几种常用的 webBrowser执行javascript的方法,详见示例截图以及代码 [实例截图] [核心代码] execScript方式: 1 2 3 4 5 6 7 8 9 1 ...
- Noip数学整理
目录 Noip数学整理 序 1 取模相关 2 质数相关 3.基本操作 4.方程相关 5.数列相关 6.函数相关 Noip数学整理 序 因为某些原因, Noip对于数学方面的考纲仅停留在比较小的一部分, ...
- JSON详解+ C# String.Format格式说明+ C# ListView用法详解 很完整
JSON详解 C# String.Format格式说明 C# ListView用法详解 很完整
- 李建20181029课时整理(NOIP考点)
历年真题 数学题: 数论(exgcd 逆元,CRT,EXCRT,快速幂,线性筛 ,杜教筛)排列组合 概率期望(什么东西) C(n,m) = 逆元? 分解质因数? Ti(大质数的类似物)思考技巧分解质因 ...
- NOIP模板整理计划
先占个坑 [update]noip结束了,弃了 一.图论 1.单源最短路 洛谷P3371 (1)spfa 已加SLF优化 #include <iostream> #include < ...
- $\rm{NOIp}$板子整理
怎么说呢,整理这个的目的就是为了有个简约的\(list\),方便以后查阅,复习起来不至于太吃力. 并且--好像重温一遍所有,会更有一些新的认识.这也算是对我所学的一点整理了吧. 一.并查集的两种方式 ...
- C# ListView用法详解 很完整
一.ListView类 1.常用的基本属性: (1)FullRowSelect:设置是否行选择模式.(默认为false) 提示:只有在Details视图该属性才有意义. (2) GridLines:设 ...
- OI知识点|NOIP考点|省选考点|教程与学习笔记合集
点亮技能树行动-- 本篇blog按照分类将网上写的OI知识点归纳了一下,然后会附上蒟蒻我的学习笔记或者是我认为写的不错的专题博客qwqwqwq(好吧,其实已经咕咕咕了...) 基础算法 贪心 枚举 分 ...
随机推荐
- Java开发环境搭建(一)
一.JDK与JRE JDK:Java Development Kit,Java开发工具包,是给开发人员使用的,其中包含了Java的开发工具,如java.javac.jar等命令,同时也包含了JRE. ...
- MySQL数据库使用时注意事项
MySQL数据库使用时注意事项 建表的角度上 1.合理安排表关系 2.尽量把固定长度的字段放在前面 3.尽量使用char 代替varchar 4.分表:水平分和垂直分 在使用sql语句的时候 1.尽量 ...
- Solr-rce历史漏洞复现
最近Solr又出了一个RCE漏洞,复现了一下 # coding: utf-8 import requestsimport argparsefrom urllib import parse if __n ...
- uboot使用脚本
使用mkimage命令 # mkimage -A ARM -O linux -T script -C none -n "script" -d *.sh *.img # tftp x ...
- SpringMVC 八大注解
1.@Controller 在SpringMVC 中,控制器Controller 负责处理由DispatcherServlet 分发的请求,它把用户请求的数据经过业务处理层处理之后封装成一个Model ...
- python(For/while循环语句)
一.循环语句 1.while循环 当我们在python中需要重复执行一些动作的时候,这时我们就要用到循环 while循环的结构,当条件成立的时候,就会执行里面的代码 while循环不断的运行,直到指定 ...
- mybatis返回map类型数据空值字段不显示的解决方法
在日常开发中,查询数据返回类型为map,数据库中有些自动值为null,则返回的结果中没有值为空的字段,则如何显示值为空的字段呢? Spring boot + MyBatis返回map中null值默认不 ...
- CentOS7安装与优化
原文地址:https://www.cnblogs.com/blsnt/p/9556946.html
- LeetCode - 61、旋转链表
给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数. 示例 1: 输入: 1->2->3->4->5->NULL, k = 2 输出: 4-& ...
- Flink Streaming基于滚动窗口的事件时间分析
使用flink-1.9.0进行的测试,在不同的并行度下,Flink对事件时间的处理逻辑不同.包括1.1在并行度为1的本地模式分析和1.2在多并行度的本地模式分析两部分.通过理论结合源码进行验证,得到具 ...