算法竞赛进阶指南 0x00 基本算法
放在原来这个地方不太方便,影响阅读体验。为了读者能更好的刷题,另起一篇随笔。
0x00 基本算法
0x01 位运算
[题目][64位整数乘法] 知识点:快速幂思想的灵活运用
[题目][最短Hamilton路径] 知识点: 状压DP。我的题解总是写得不好,大家还是看书吧qwq
P2114 [NOI2014]起床困难综合症 知识点:状态压缩
0x02 递推与递归
[题目][费解的开关] 知识点:搜索?递推?模拟? +状压
[题目] 4座塔的Hanoi 知识点:递推
[题目][约数和问题] 知识点:数学+分治
0x03 前缀和和差分
[HNOI2003]激光炸弹 知识点: 二维前缀和模板
[题目] [IncDec Sequence] 知识点: 对差分的理解
P2879 Tallest Cow 知识点: 差分
0x04 二分
[题目] [Best Cow Fences] 知识点: 二分+前缀和做最大子段和
给你一个正整数序列 \(a[]\) 求一个平均数最大、长度不小于 \(L\) 的连续子段
0x05 排序
[题目][货仓选址] 经典问题,洛谷期中考试部分分考过,选中位数。
[题目][七夕祭] 一道好题。看起来很复杂,其实可以抽象成两次“环形均分纸牌”问题,再经过思考分析,可以再转化成“均分纸牌”+“货仓选址”两个基本问题。
这也启发到我们(引用书上原话):这个问题的每一步都仅用到基本算法的性质,最后转化成了简单而经典的问题。我们应该时刻把各种模型之间的简化,扩展和联系作为算法学习的设计脉络,以点成线,触类旁通,才能产生数量到质量的飞跃。
[关于动态维护中位数] 有一种叫做“对顶堆”的做法。 开一个大根堆一个小根堆,把 \(1\) 到 \(\frac{m}{2}\) 的数储存在大根堆里,把 \(\frac{m}{2}+1\) 到 \(m\) 的数储存在小根堆里,这样两个堆的堆顶都在中心位置,就可动态维护中位数了,很好理解。
0x06 倍增 和 0x07 贪心
今天把0x06倍增 和 0x07贪心 都看完了,书上实在是讲得太好了。题外话:后天就要开学考试了!
0x08 总结与练习
[题目+Code][The Pilots Brothers' refrigerator]
P2862 [USACO06JAN]把牛Corral the Cows 乍一看是一个二维前缀和,考虑要离散化。突破口在判定这里,考虑二分。大佬们用扫描线+二分,我这个蒟蒻在这里就不多bb了。
算法竞赛进阶指南 0x00 基本算法的更多相关文章
- 《算法竞赛进阶指南》0x10 基本数据结构 Hash
Hash的基本知识 字符串hash算法将字符串看成p进制数字,再将结果mod q例如:abcabcdefg 将字母转换位数字(1231234567)=(1*p9+2*p8+3*p7+1*p6+2*p5 ...
- 《算法竞赛进阶指南》1.4Hash
137. 雪花雪花雪花 有N片雪花,每片雪花由六个角组成,每个角都有长度. 第i片雪花六个角的长度从某个角开始顺时针依次记为ai,1,ai,2,-,ai,6. 因为雪花的形状是封闭的环形,所以从任何一 ...
- bzoj 1787 && bzoj 1832: [Ahoi2008]Meet 紧急集合(倍增LCA)算法竞赛进阶指南
题目描述 原题连接 Y岛风景美丽宜人,气候温和,物产丰富. Y岛上有N个城市(编号\(1,2,-,N\)),有\(N-1\)条城市间的道路连接着它们. 每一条道路都连接某两个城市. 幸运的是,小可可通 ...
- POJ1639 算法竞赛进阶指南 野餐规划
题目描述 原题链接 一群小丑演员,以其出色的柔术表演,可以无限量的钻进同一辆汽车中,而闻名世界. 现在他们想要去公园玩耍,但是他们的经费非常紧缺. 他们将乘车前往公园,为了减少花费,他们决定选择一种合 ...
- 算法竞赛进阶指南--快速幂,求a^b mod p
// 快速幂,求a^b mod p int power(int a, int b, int p) { int ans = 1; for (; b; b >>= 1) { if (b &am ...
- 算法竞赛进阶指南0x14 Hash
组成部分: 哈希函数: 链表 AcWing137. 雪花雪花雪花 因为所需要数据量过于大,所以只能以O(n)的复杂度. 所以不可能在实现的过程中一一顺时针逆时针进行比较,所以采用一种合适的数据结构. ...
- 《算法竞赛进阶指南》1.6Trie
142. 前缀统计 给定N个字符串S1,S2-SN,接下来进行M次询问,每次询问给定一个字符串T,求S1-SN中有多少个字符串是T的前缀. 输入字符串的总长度不超过106,仅包含小写字母. 输入格式 ...
- 《算法竞赛进阶指南》 1 (P4) a^b 快速幂
快速幂 #include<cstdio> #include<cmath> #include<iostream> using namespace std; long ...
- POJ1722 算法竞赛进阶指南 SUBSTRACT减操作
原题连接 题目描述 给定一个整数数组\(a_1,a_2,-,a_n\). 定义数组第 i 位上的减操作:把\(a_i\)和\(a_{i+1}\)换成\(a_i - a_{i+1}\). 用con(a, ...
随机推荐
- architecture 20190628
https://abp.io/ --ABP v2 官网 https://grpc.io/ --gRPC官网 https://devblogs.microsoft.com/dotnet/introdu ...
- json-server 服务器的接口
服务器接口的数据在浏览器网络地址中,便可查看: 获取接口的数据需要在网络地址后面,填写接口的名字即可,(对于 json-server来说)
- "error" : "Content-Type header [application/x-www-form-urlencoded] is not supported"
https://blog.csdn.net/weixin_40161254/article/details/86000839 Es Head https://www.cnblogs.com/afeig ...
- RotateZoom.cpp——Inter
// RotateZoom.cpp : Defines the entry point for the console application. // #include "stdafx.h& ...
- 2018-5 - 凉经 - Mozilla Firefox Ltd - 前端工程师
北京谋智火狐信息技术有限公司(北京市东城区建国门华润大厦 17 层)过去面试的时候感觉电梯好神奇啊!一边的电梯是直达 18 层以上的,我按了 18 层准备到了再往下走一层,一个老司机和我说要做另一边的 ...
- EDM数据:如何选择邮件服务器平台
博主知道有不少的企业和个人都在寻找邮件服务器平台,下面博主从下面几个方面给大家介绍一下如何选择. 一.列表管理功能是否完善. 一般一个好的邮件服务器平台系统都有完善的列表管理功能.列表管理功能是指邮件 ...
- 测开之路一百四十二:ORM框架之SQLAlchemy建库、建表、数据库操作
flask-SQLAlchemy是在原生SQLAlchemy的基础之上做了一层封装,安装flask-SQLAlchemy会自动安装SQLAlchemy 安装 传统的sql建表建字段 通过flask-S ...
- replace()函数
1 https://jingyan.baidu.com/article/454316ab4d0e64f7a6c03a41.html
- SpringContextHolder使用报错
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/dobecoder/article/details/88401612今天在使用SpringContex ...
- HTML CSS JS 特殊字符(转义)表
HTML有许多特殊的字符,您对此有多少了解?平时在WEB制作中,您又有用到多少?或者说你在平时使用之时,是否也会碰到,有许多特殊字符要如何打印出来?比如说“笑脸”,比如说“版权号”.要是你用时忘记了这 ...