ACM
Jeucai
一个想当游戏策划的程序员
刘看山平台名称:盖木欧瓦
展开
-
【ACM训练四】二分、三分查找
二分查找 定义参阅:二分查找有几种写法?它们的区别是什么? 特征:每次取中点进行判断,待查找集合减半;线性函数;不断逼近 前提:查找集合有序 例题 1、Cable master(原博客链接) 有n段长度分别为Li的电缆,要求把它们分割成K条长度为X的电缆,问X的最大值为多少。 题解:将X视为变量,可知它的范围为0~max; 那么问题就变成了电缆长度取X时,所得的电缆条数大于,还是等于,或小于K的...原创 2019-07-08 09:13:57 · 347 阅读 · 0 评论 -
【ACM训练五】区间查询问题
ST表 算法详解:https://blog.csdn.net/Hanks_o/article/details/77547380 https://www.cnblogs.com/qt666/p/6508208.html https://blog.csdn.net/qq_31759205/article/details/75008659 特征:O(nlogn)预处理,O(1)查询最值,不支持在线修改 ...原创 2019-07-10 11:04:01 · 1409 阅读 · 1 评论 -
【ACM训练一】时间复杂度,递归和枚举
时间复杂度 浅显易懂的解释:https://blog.csdn.net/qq_41523096/article/details/82142747#commentsedit 常见时间复杂度(大O表示法) (1)O(1):常量阶,运行时间为常量 (2)O(logn):对数阶,如二分搜索算法 (3)O(n):线性阶,如n个数内找最大值 (4)O(nlogn):对数阶,如快速排序算法 (5)O(n^2):...原创 2019-07-04 19:16:13 · 703 阅读 · 0 评论 -
【ACM训练二】贪心算法与动态规划
贪心算法 贪心算法是指在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,它所做出的是在某种意义上的局部最优解。(子问题最优解)(每次做出决策后问题规模变小) 相邻交换—不干扰其他—局部最优——排序——得最值 相关知识点 定义结构体(通过 . 访问属性) struct object { int v,w; } 排序 #include <cstdio....原创 2019-07-04 19:28:04 · 293 阅读 · 0 评论 -
【ACM训练三】深度优先搜索与广度优先搜索
广度优先搜索 大神讲解链接:https://blog.csdn.net/raphealguo/article/details/7523411原创 2019-07-07 14:46:03 · 258 阅读 · 0 评论 -
【ACM训练六】数论入门
素数问题 素数判定 枚举:2-n(时间复杂度:O(n)) 优化:2-[√n] (时间复杂度:O(√n)) 素数筛 如何筛出2到n中所有素数? 枚举:时间复杂度O(n√n) 素数筛:通过预处理,做到每次O(1)判断一个数(某个范围内)是否为素数。 埃氏筛:初始将所有数(从2 开始) 默认为素数,从小到大遍历每个数x,如果x 是素数,那么将2x,3x,4x……划掉,即标记成非素数 优化:每次改为划掉x...原创 2019-07-11 15:35:49 · 403 阅读 · 0 评论 -
【ACM实践一】C++基础
数据类型 布尔类型 bool,取值为true/false 字符串类型 string 例题:输入数据的每行包含若干个(至少一个)以空格隔开的整数,输出每行中所有整数之和。 #include<iostream> #include<string> #include<sstream> using namespace std; int main() { string ...原创 2019-07-16 08:54:30 · 264 阅读 · 0 评论