08 2019 档案
摘要:引言 请先忽略标题,这的确是一篇关于怎样读书的文章。 我会谈到:“书”是什么;我理解的“读书”这件事的本质是什么;现代人的阅读有哪些困境。 还会谈到:“建构主义”教育方法;当下流行的学习方法——“费曼技巧”的本质是什么;以上与读书有何关系。 如果你恰好对上面部分话题感兴趣,请阅读全部内容,因为文章并
阅读全文
摘要:转载自洛谷[https://www.luogu.org/blog/yihan/unordered](https://www.luogu.org/blog/yihan/unordered) 这是啥? 我们知道,在c++11中出现了一些有用的容器,其中包括了两(三)个非常实用的容器:unordered_
阅读全文
摘要:A. Circle of Students 找到最小值,左右试探后,找到连续的一串序列持续输出前进,直到回到原来位置,或中途退出 1 #include<bits/stdc++.h> 2 #define FOR(i,a,b) for(int i=a;i<b;i++) 3 #define FOR2(i,
阅读全文
摘要:题意 一串数表示树高,从第一棵树开始,跳到比当前矮的不消耗体力,否则消耗一点体力,每次询问有一个步伐限制,求每次跳到最后一棵树最少耗费多少体力。 基本思路 典型的单调队列优化dp题,dp方程为 $$dp[i]=a[i]<a[min(dp[j].pos)]?dp[j]:dp[j]+1,\qua
阅读全文
摘要:悬线法简介 悬线法最早由王知昆dalao在IOI2003年国家集训队论文-《浅谈用极大化思想解决最大子矩形问题》中最早提出,用于解决最大(最优)子矩阵及相关变形问题。 定义 极大化思想 定理一 在一个有障碍点的矩形中的最大子矩阵一定是一个极大子矩阵 定理二 一个极大子矩阵的四边一定不能向外扩展,即要
阅读全文
摘要:国家集训队曾经发表过的论文总结 国家集训队1999论文集 陈宏:《数据结构的选择与算法效率——从IOI98试题PICTURE谈起》 来煜坤:《把握本质,灵活运用——动态规划的深入探讨》 齐鑫:《搜索方法中的剪枝优化》 邵铮:《数学模型的建立、比较和应用》 石润婷:《隐蔽化、多维化、开放化——论当今信
阅读全文
摘要:简介 一、定义 单调栈是一种高效,方便,简单的数据结构,其特点与单调队列类似,满足在栈里的数据呈现单调递增或者递减的特性,用来计算一定区间的值。 二、原理 (1)当新元素在单调性上优于栈顶时(单增栈新元素比栈顶大,单减栈新元素比栈顶小),压栈,栈深+1; (2)当新元素在单调性与栈顶相同(新元素于栈
阅读全文
摘要:题意 一颗多叉树,给四个点,求有无公共点。 基本思路 倍增LCA,若dep(lca(a,b))>dep(lca(cd)),若有公共点,则lca(lca(a,b),c)==lca(a,b)或lca(lca(a,b),d)==lca(a,b),反之亦然 倍增做法 1 #include<bit
阅读全文
摘要:洛谷模板题 P3379 给定一棵有根多叉树,请求出指定两个点直接最近的公共祖先。 ST表 基本思路 树的构造 举个栗子 欧拉序 存储第一次出现的位置 使用链式前向星存储树的结构,首先求一棵树的欧拉序,然后根据两点的公共祖先就是欧拉序中(第一次出现时)两点位置区间内的深度最小点, 这一定理转化成RMQ
阅读全文
摘要:OI Training 知识体系结构 初级 1.1 C语言基础 1.1.1 C语言程序结构(A+B Problem) 1.1.2 变量,常量,数据类型,输入与输出 1.1.3 条件语句 1.1.4 循环语句 1.1.5 数组 1.1.6 字符数组、字符串 1.1.7 指针 1.1.8 共同体、结构体
阅读全文
摘要:int __builtin_ffs (unsigned int x) 返回x的最后一位1的是从后向前第几位,比如7368(1110011001000)返回4。 c++ int n = 1;//1 int m = 8;//1000 cout
阅读全文
摘要:前向星 在了解链式前向星之前,先简单了解下前向星。前向星是一种边集数组,先把每条边按照从小到大的顺序排序,如果起点一样,那么就按照终点从小到大来排序,并记录下每个点为起点在数组中的位置和该点所连边的数量。 len[i]表示以i为起点的边的条数,hehiad[i]表示以i为起点的边在数组中
阅读全文