适应Noilinux

1.终端操作

打开终端 \(Ctrl+Alt+T\)

打开文件夹 \(cd\) +名称

新建文件夹 \(mkdir\) +名称

打开 \(vim\) 配置 \(vim ~/.vimrc\)

打开 \(vim\) 文件 \(vim\) + 文件名

2.强大的\(Vim\)配置

set nu
set mouse=a
set tabstop=4
set shiftwidth=4
set autoindent
set smartindent
inoremap ( ()<ESC>i
inoremap [ []<ESC>i
inoremap { {}<ESC>i
inoremap " ""<ESC>i
inoremap ' ''<ESC>i
color desert
map <F9> <Esc>:w<CR>: !g++ % -o %< && ./%< <CR>
imap <F9> <Esc>:w<CR>: !g++ % -o %< && ./%< <CR>

3.\(Vim\) 操作

复制 \(n + yy\)

粘贴 \(p\)

删除 \(n+dd\)

撤销 \(u\)

退出死循环 \(Ctrl+c\)

放大字号 \(Ctrl+shift+'='\)

缩小字号 \(Ctrl+'-'\)

保存 \(:w\)

退出 \(:q\)

进入插入模式 \(i\)

退出插入模式 \(Esc\)

4.对拍

system("./data > data.in");
system("./1 < data.in > try1.out");
system("./2 <data.in > try2.out");
if(sytsem("diff try1.out try2.out")) printf("WA\n");
else printf("AC\n");

5.千万不要闲的用鼠标滑轮!会意外退出!

6.写 \(Vim\) 时刻注意保存!

7.\(Noilinux\) 密码 123456


易犯错误

1.头文件

别忘了 #include<cmath> #include<cstring>

对拍测时间 #include<ctime> (\(clock()\))

2.\(using\) \(namespace\) \(std;\) 别忘写!

3.数组大小

无向图边 \(m \times 2\) ,注意边数与点数

不同数组大小不同时一定要区分!

for(int i=0;i<MAXN;i++) 注意取不到等!

4.数组名称不要搞混

变量(\(i\),\(j\))别写反

5.取模运算

出现减法时 \((\%P+P)\%P\)

需要取模的变量,在任何操作后都要去取模!不要漏!

6.溢出

判断 \(int\) 是否需要转 \(long long\)

运算中间量要不要转

7.\(double\) 问题

判断相等时 \(fabs(r-l)<eps\)

8.位运算

注意优先级,疯狂加括号

不要轻易取反(符号也会变)

9.做题细节

看题不要看漏!题目最细小的地方!!

考虑特殊情况,不要漏!

10.想题时

多举反例,想出一些思路是先别急着高兴,往后想

限时想题,及时放置

动态规划时间复杂度=状态数 \(\times\) 转移时间!转移时间别漏了!

11.输入大于 \(10^5\) 加读入优化

12.代码实现细节

树链剖分:

求重子时别忘了 size[u]+=size[v]

根节点不要 \(dfs\) 两遍;在 \(dfs\) 前赋值

倍增:

数组下标问题,别越界

线段树:

下放 \(lazy\) 的同时正确更新 \(sum\)

结构体名别写错

强连通分量:

\(vis\) 表示进栈情况:0--未进过,1--在栈中,2--已出栈

字符串哈希:

想好是否真的可用

加1减1的事情想清楚,多对拍

并查集:

路径压缩 int getfa(int x) { return x==fa[x] ? x : fa[x]=getfa(fa[x]); }

初始化 \(fa[i]=i\)

\(Dijkstra\):

堆优化,\(pair\) 注意第一关键字为 \(dis\)

\(SPFA\):

\(dfs\) 版的 \(vis\) 表示是否正在遍历

判负环可将 \(dis\) 都设成0

差分约束系统:

大于等于还是小于等于

欧拉回路:

注意在访问完一个节点后,将其加入倒叙的 \(ans\) 中

平衡树:

更新 \(size\) 等时别忘了加上自己的


常见思想

1.求某某最值 -> 转化为二分+判定(前提有单调性)

2.问题分解

3.将问题等价转换

4.有时多求一些东西,包含了答案

5.图论与数据结构相结合,动态规划、数论与图论结合(分层图)

猜结论,找规律——数论大胆推&发现;图论谨慎证明;动规小心陷阱

情况考虑周全——多举反例&特殊例子;眼光放开

不要想麻烦——排除干扰,简化题意;从简单算法(二分、数组)想起


小技巧

1.预处理,前缀和…

2.枚举子集时 for(int i=t;i;i=(i-1)&t)

3.用 \(stl\) 中的 \(set\)

noip2018 考前提醒!的更多相关文章

  1. NOIP2018考前抱佛脚——图论基础复习

    目录 存图方式 邻接矩阵存图 邻接表存图 链式前向星 最小生成树 例1 P1536 村村通 题目描述 输入输出格式 输入输出样例 标程 例2 P1546 最短网络 Agri-Net 题目背景 题目描述 ...

  2. NOIP2018考前抱佛脚——搜索复习

    目录 搜索 DFS 例1 P1101 单词方阵 题目描述 输入输出格式 输入输出样例 标程 例2 P1605 迷宫 题目背景 输入输出格式 输入输出样例 标程 例3 P1019 单词接龙 题目描述 输 ...

  3. NOIP2018考前抱佛脚——数据结构基础及STL实现

    目录 动态数组 栈 队列 优先队列 动态数组 srand(time(0)); std::vector<int> qwq; for(int i = 1;i <= 10;++i) qwq ...

  4. Noip2018 考前准备

    目录 基础算法 二分 模拟(未补) 高精(未学习) 搜索(未补) 排序 图论 树的直径 树的重心 最短路算法 Spfa Dijkstra Floyd 最小生成树 kruskal 数论 线性筛 线性筛素 ...

  5. 论一个蒟蒻的脑子里可以有多少坑(貌似咕了……目前更新保持在noip阶段)

    就是错题整理了,其实也会把一些不该犯的失误整进来. 其实之前一直拖着不想写,直到某次模拟赛,看错了2道题,顺便爆了一道题的int(没错第一个点就会爆)之后爆零了,吓得我赶紧把这篇博客搞出来了..... ...

  6. 初征——NOIP2018游记

    前言 从最初接触oi到今年noip到来,也已经将近有一年了.从对于程序一窍不懂到现在开始学习算法,只是短短的不到一年的时间罢了.这次noip,不仅仅是我oi生涯的第一次noip,更是相当于是对我这一年 ...

  7. NOIP考纲总结+NOIP考前经验谈

    首先来一张图,很直观(截止到2012年数据) 下面是收集的一些,我改了一下 红色加粗表示特别重要,必须掌握 绿色加粗表示最好掌握,可能性不是很大,但是某些可以提高程序效率 高精度 a.加法 b.减法 ...

  8. NOIP2018 AFO记

    仿佛"距NOIP2018还剩30天"的倒计时还在昨天,没想到这一天来的这么快. 考前在机房嘻嘻哈哈打打闹闹,开玩笑说道"我要AFO了",心里暗暗发誓做好自己,不 ...

  9. NOIP2018旅游记

    2018.12.4更新: GD分数线出了,1=分数线310,1=了 好歹能和cyp交代了吧) 2018.11.28更新: 不好意思,太懒了,加上我也不记得后来发生什么了,总之就这样太监了. noip2 ...

随机推荐

  1. LR性能测试自动化集成JENKINS

    LR11不支持JENKINS集成,解决方案可以使用BAT代替执行,JENKINS定时调用BAT执行性能测试用例.   1. 先随便录制l一个LR脚本,保存为 D:\TEST\test01 2. 打开 ...

  2. vue-learning:12-1- HTML5的<template>内容模板元素

    HTML5的<template>内容模板元素 HTML内容模板<template>元素将它其中的内容存储在页面文档中,以供后续使用,该内容的DOM结构在加载页面时会被解析器处理 ...

  3. react-electron 项目打包体积尽可能减小的方法

    当一个react-electron项目做好之后就可以开始进行打包,首先就是打包react,这个自然不用多说,不过事先要记住一点,项目目录主进程文件main.js最好放在根目录,再执行打包命令 npm ...

  4. Linux普通用户执行特定的命令配置

    最近处理了一个二级CASE,驻场运维的初级工程师安装软件的时候执行了yum update,导致用户生产系统的glibc也升级了,使得用户的生产调度软件无法使用.研究了两三天,最靠谱的做法如下: Ste ...

  5. Mybatis 多对多(易百教程)

    mybatis3.0 添加了association和collection标签专门用于对多个相关实体类数据进行级联查询,但仍不支持多个相关实体类数据的级联保存和级联删除操作.因此在进行实体类多对多映射表 ...

  6. Vijos1917 艾酱最喜欢的数字 [求绝对众数]

    1.题意:第一行一个数字N,表示一共有多少个数字,第二行N个数字,保证其中至少有一个数字出现次数超过一半,任务是求出这个出现最多的数. 2.分析:本题是明显的求众数的问题,常规思路为开一个大数组,在读 ...

  7. TCP/IP||ARP/RARP

    1.ARP ARP(地址解析协议)主要为IP地址到对应的硬件提供动态映射,过程是自动完成 在网络接口有一个硬件地址(48 bit),在硬件层次上的数据帧交换必须有正确的接口地址,但是32 bit 的I ...

  8. 005 Ceph配置文件及用户管理

    一.Ceph的配置文件 Ceph 配置文件可用于配置存储集群内的所有守护进程.或者某一类型的所有守护进程.要配置一系列守护进程,这些配置必须位于能收到配置的段落之下.默认情况下,无论是ceph的服务端 ...

  9. 【题解】SDOI2015序列统计

    [题解]SDOI2015序列统计 来自永不AFO的YYB的推荐 这里是乘积,比较麻烦,不过由于给定的序列膜数是个小质数,所以可以\(O(m^2\log m)\)找原跟(实际上不需要这么多). 乘积有点 ...

  10. 【C++】CCFCSP201803-2碰撞的小球

    // // main.cpp // CCFCSP20180318_2_碰撞的小球 // // Created by T.P on 2018/3/24. // Copyright © 2018年 T.P ...