qbzt day5 上午】的更多相关文章

动态规划 递推  递归   记忆化搜索 斐波那契数列 1.用其他已经计算好的结果计算自己的结果(递推) 2.用自己的值计算别人的值(考虑对之后的项做出的贡献) cin >> n; f[]=;f[]=; ;a<=n;a++) f[a] = f[a-] + f[a-]; ;a<n;a++) { f[a+] += f[a]; f[a+] += f[a]; } 理论上两种方法都是可以的,但有的题一种方法会很难写,另一种方法就很好写,所以两种都需要掌握 3.记忆化搜索 递归处理斐波那契数列的…
预计分数:100+40+30=170 实际假分数:0+0+0=0 CE*3 实际真分数:60+50+0=110 老师没把我的程序放的文件夹里面,于是..... T1 https://www.luogu.org/problem/show?pid=T15678 一眼秒C(n,k) 组合数, 不过数组少开了1...翻车了呜呜呜~~~~(>_<)~~~~ #include<iostream> #include<cstdio> #include<cstring> #i…
由于优盘咕咕咕了,所以这篇就咕咕咕了 以后还会补上的 qwq…
还是合并石子,但是这次可以任意两个合并,并且求最大异或和 f[s]表示把s所对应的的石子合并为一堆的最小代价 最后求f[2^n-1] 怎么转移? 最后一次也是把两堆合并成一堆,但是会有很多情况,可以枚举s的所有子集,把子集和剩下的部分合并 直接枚举比s小的数,看看是否s|a=s或s&a=a 复杂度O(4^n) 优化:如果自己直接枚举子集就会快一些 cin >> n; ;a<n;a++) cin >> z[a]; ;a<(<<n);a++) ;b<…
农场主John新买了一块长方形的新牧场,这块牧场被划分成M行N列(1 ≤ M ≤ 12; 1 ≤ N ≤ 12),每一格都是一块正方形的土地.John打算在牧场上的某几格里种上美味的草,供他的奶牛们享用. 遗憾的是,有些土地相当贫瘠,不能用来种草.并且,奶牛们喜欢独占一块草地的感觉,于是John不会选择两块相邻的土地,也就是说,没有哪两块草地有公共边. John想知道,如果不考虑草地的总块数,那么,一共有多少种种植方案可供他选择?(当然,把新牧场完全荒废也是一种方案) 发现数据范围很小,可以状压…
图论 最短路:dijkstra   spfa   floyd 最小生成树:kruskal 连通性:bfs/dfs    tarjan(强连通分量) 其它:拓扑排序    LCA 齿轮: 图的dfs树只有返祖边没有横向边 树边确定了基础的转动比,非树边判定转动比是否可行 Lca Dijkstra Pair第一个存的是源点到这个点当前的最短路,第二个存的是这个点的编号 预处理 把1压进去,1到其他的dis都设置为正无穷 不断地从堆顶弹出元素,直到弹空 对其中的元素进行处理 注意如果已经处理过就不用处…
内容提要 堆 lca(最近公共祖先) st表 hash 并查集 树状数组 线段树 数据结构 1.堆 Priority_queue 他滋兹:插入删除查询最大值(最小值) 分为大根堆小根堆 2.LCA 首先我们有一棵树,定义某个点的祖先为这个点到根节点的路径上的所有点 我们现在有两个点A,B,我们发现A和B有一些公共的祖先 我们只需要找到最近的公共祖先LCA,就可以找到它们所有的公共祖先 LCA一定是最深的公共祖先 步骤: 如果A的深度小于B的深度,就把它们互换(为了处理方便) 把A向上调到和B同样…
内容提要 贪心 分治 分块 搜索 接着昨天的讲 过河问题 考虑AB是最快的人,CD是最慢的人,要把CD两个人送过河,只有两种方案,牵扯到四个人,并且n个规模的原问题化成了n-2个规模的子问题 那么最后有两个情况,四个人和三个人,如果是四个人就直接按刚才的方法搞一搞就好了,如果是三个人的话,就有两个方案,一个是A来回送,一个是AB一起操作,就是在两个之间取min就好了 贪心算法在骗分时的运用主要集中在两点: 1.贪心算法失效时该如何补救? 2.如何利用贪心算法来提升自己的一个暴力算法? 1.贪心算…
内容提要 模拟,贪心 在讲这些东西之前,我们先来了解一个东西:high level 这个东西大体上就是你做题之前要先想清楚自己要写什么,怎么写,然后再写,不要有一点写一点 1.模拟 模拟算法算是很水的算法了 模拟算法的关键就是将人类语言翻译成机器语言 更准确的说是:将一个用日常大白话语言的东西用计算机语言抽象地表达出来 所以想要良好地掌握模拟算法,就要做到以下两点: 1.优秀的读题能力; 2.优秀的代码能力; 例:斗地主 High Level 手里有n张牌 有k个规则(k<?),每个规则可以打出…
THU那四场考试没考好,只有20+名.这也许是我OI生涯中最后一场吧(已确认是最后一场),真是感慨万千. day0 搬进浙大宿舍404房间(神房间号),四个人一间.中午发现学军伙食相当良心,是我参加的OI活动中最良心的 day1 徐寅展 讲了一些动态维护图的连通性以及最小生成树的算法,太深了,基本上只听懂第一个维护图的连通性的算法.下面就简单讲一下这个算法吧. 首先,这个算法是在线算法,其时间复杂度是m lg^2.离线算法可以做到m lg,用LCT维护最大生成树就行了(边权为边被删除的时间).…