02 2019 档案

摘要:好!机会来了! 依评论区的要求,小金羊献上STL 的题解。 ~~当然不会告诉你 我根本不会用~~ 所以,有什么内置的成员函数救救孩子??? 还是先复习 or 预习一下set。 先给集合一个名字: 插入元素: 查找元素: 如果 没有找到,返回 ,是一个空的~~位置~~迭代器。 于是得出: 如何判断元素 阅读全文
posted @ 2019-02-28 20:31 小金羊 阅读(618) 评论(0) 推荐(0)
摘要:自学ST表笔记 说实话原先QBXT学的ST表忘的差不多了吧...... 我重新自学巩固一下~~(回忆一下)~~ 顺便把原先一些思想来源的 "原博" 发上来 一、ST表简介 ST表,建表时间$O(n\cdot logn)$,访问过程$O(1)$ 的 离线RMQ表 。 思想标签:树性数据结构,倍增,预处 阅读全文
posted @ 2019-02-23 21:32 小金羊 阅读(160) 评论(0) 推荐(0)
摘要:其实根本没有一楼dalao描述的那么麻烦...... 一楼dalao其实吧,采用了一种纯属模拟的方式。 下面是我的大跃进思想 但是一个个地做减法是不是太慢了?~~(大跃进思想)~~ 于是我们是不是可以直接进行一个大跨步式的方法 你的奶我直接全都要了? 敲一个伪代码理解一下 cpp while (当前 阅读全文
posted @ 2019-02-23 19:44 小金羊 阅读(350) 评论(0) 推荐(0)
摘要:树状数组自学笔记 树状数组和线段树都是查询$O(logn)$的数据结构。 但是为什么很多人宁愿用树状数组而不是用线段树呢? 因为树状数组写起来比线段树在一定程度上简单多了。(Author:理解看了这篇文章也OK) 但是!树状数组维护的数据局限性要比线段树要大——这验证了一句话: 越复杂的数据结构时间 阅读全文
posted @ 2019-02-18 20:41 小金羊 阅读(327) 评论(0) 推荐(0)
摘要:楼上别说这个题水,这个题可能还真有不知道的知识点。 看到这个题,想到刚学的 单调栈 。 单调栈? 单调栈和单调队列差不多,但是我们只用到它的栈顶。 单调,意思就是一直递增或者递减。 这跟这个题有什么关系? 我们看到这个题说: 这N个数是由M个从1开始的连续自然序列组成的 也就是说,我们求的是一些单调 阅读全文
posted @ 2019-02-18 10:39 小金羊 阅读(132) 评论(0) 推荐(0)
摘要:最短路自学笔记 最短路问题常见于生活以及各大OI中,用处广泛。所以最短路问题十分重要。 首先我们要了解最短路问题的基本思路: 基本思路: 1. Floyd的基本思路是枚举中转站,看看中转站和原先的路径长度和与中转以后的路径长度和那一个更短,进行更新。 2. Dijkstra的算法思想:①将一开始所有 阅读全文
posted @ 2019-02-17 21:14 小金羊 阅读(136) 评论(0) 推荐(0)
摘要:emmm...不能说是水题吧...小金羊以为考的是STL(手动滑稽)... 行,这个题说让分解因数( 不一定非得质因数 )。 我们考虑到有 第k个数有可能有$x\cdot x=n$的毒瘤 情况, 并且题目明确要求说 从小到大 ——set帮助你轻松水过去。 emmm....题目范围说是 $$1\leq 阅读全文
posted @ 2019-02-17 17:59 小金羊 阅读(275) 评论(0) 推荐(0)
摘要:不敢快速排序又想要快排的速度,还不用STL的小伙伴们看这里! ~~小金羊终于学会了堆排以外的另外的一种排序 (打个题解巩固一下)~~ 归并排序(mergesort): 时间复杂度和快排一样的优秀。 先说归并排序的实现: 首先我们一样的是要进行分解,以达到$O(logn)$の时间复杂度。 然后我们需要 阅读全文
posted @ 2019-02-17 17:57 小金羊 阅读(223) 评论(0) 推荐(0)
摘要:高中方式~~轻松解决~~这个模拟题。 首先我们了解斜率的~~简单~~求法: $$k= {y2 y1 \over x2 x1}{=}{\Delta y \over \Delta x}$$ 然后我们了解到让我们求解一次函数解析式(斜截式),就是说 $k$值一定存在! 所以这个题我们可以用 点斜式 解决。 阅读全文
posted @ 2019-02-17 17:56 小金羊 阅读(317) 评论(0) 推荐(0)
摘要:这个题我愣是交了好几遍没有过...... 后来@_皎月半洒花dalao告诉我说要^儿子节点的tag,然后就明白了...... 行吧,先上题面: 题目描述 现有N(2 ≤ N ≤ 100000)盏灯排成一排,从左到右依次编号为:1,2,......,N。然后依次执行M(1 ≤ M ≤ 100000)项 阅读全文
posted @ 2019-02-17 11:41 小金羊 阅读(174) 评论(0) 推荐(0)
摘要:Day 4 学习笔记 各种图论 图是什么???? 不是我上传的图床上的那些垃圾解释... 一、图: 1.定义 由顶点和边组成的集合叫做图。 2.分类: 边如果是 有向边 ,就是 有向图 ;否则,就是 无向图 。 平常的图一般都 有标号 ,我称之为~~标号的图(废话)~~ 有序图 ,如果 没有标号 , 阅读全文
posted @ 2019-02-17 08:23 小金羊 阅读(392) 评论(0) 推荐(0)
摘要:Day 3 学习笔记 STL 模板库 一、结构体 结构体是把你所需要的一些 自定义的类型 (原类型、实例(:包括函数)的集合)都放到一个变量包里。 然后这个变量包与原先的类型差不多,可以开数组,是一种数据类型。 1.成员组成 1.成员实例,就是原先的类型。 2.成员函数,可以是比较函数,可以和结构体 阅读全文
posted @ 2019-02-17 08:19 小金羊 阅读(272) 评论(0) 推荐(0)
摘要:Day 2 笔记 数据结构 1.栈、队列、链表等数据结构都是 线性数据结构 2. 树状数据结构 :二叉堆,线段树,树状数组,并查集,st表... 优先队列其实与二叉堆的存储方式并不相同。 一、二叉堆 1.二叉堆的基本功能: 1.插入元素:O(logn) 2.查找元素:O(logn) 3.删除元素:O 阅读全文
posted @ 2019-02-17 08:13 小金羊 阅读(181) 评论(0) 推荐(0)
摘要:有的时候我们找不出错误在哪里,这时候我们需要调试一遍看看到底是哪里出了问题:我们需要分布查看程序运行情况。 这时候我们用到了调试这样一个神奇的东西。 一、基于Dev cpp环境下的调试 Dev cpp是考试用的软件,基于Dev cpp必须学会调试。(话说长时间以来我都是脑算~~,身体就不好了~~23 阅读全文
posted @ 2019-02-16 09:17 小金羊 阅读(403) 评论(0) 推荐(0)
摘要:小金羊发现用的方法和python大佬们的方法还是不一样... ~~(大概是我太弱了qAq)~~ emmm... (Mode:Python 3)Code: 咱比不了1行,但是6行的代码可以比c++! 阅读全文
posted @ 2019-02-15 21:11 小金羊 阅读(316) 评论(0) 推荐(0)
摘要:看到这个题一共也就pow(3,10)= 59049 次循环,那不就暴力了嘛! 虽然说正解是 动归和搜索 , ~~但是搜索和暴力枚举的差距真心不大(不好好学习qwq)~~。 看到楼上又说到 答案需要数据存储的问题, 这里提供一种借助 STL的queue(队列)来进行存储 的方法。 这个方法难度几乎为0 阅读全文
posted @ 2019-02-15 21:10 小金羊 阅读(402) 评论(0) 推荐(0)
摘要:很明显这题是个 假入门 ! ~~小金羊一不小心点进题解发现了内幕~~ ~~能看的出来都WA过Unsigned long long int~~ 做题可以用Python,Python的变量虽然 强悍的不行! 但是我们可以用字符串最后一个判断。 (万一下次他给一个 1000位的数 呢?~~去世吧出题人~~ 阅读全文
posted @ 2019-02-15 21:09 小金羊 阅读(194) 评论(0) 推荐(0)
摘要:看到这个题,小金羊第一秒的反应就是: 优先队列可解! 看到楼上某同学一个个比较, find()函数是时候现身了! 还有一点,我们可以建立一个临时队列来存一下输入的字符串。 最后,我看到dalao使用了一个计数器来输出,并且输出都会多一个回车, 这里提供一个简单的方法来避免这个多回车的办法。 ~~ju 阅读全文
posted @ 2019-02-15 21:08 小金羊 阅读(291) 评论(0) 推荐(0)
摘要:看着你们累死累活得快排、冒泡、结构体特殊冒泡、还有dp... 蒟蒻表示真的不用那么麻烦! 难度:新手村+1 压行情况:0 理解难度:0 首先我们来了解一下优先队列:(自己抄的自己...) 讲元素一个个放进队列里,自动维护(排序),然后抽出来,堆排序过程! 原先的堆排序是要开一个数组来着... 那么我 阅读全文
posted @ 2019-02-15 21:07 小金羊 阅读(224) 评论(0) 推荐(0)
摘要:说实话,打表真的很累! 所以小金羊又开始暴力出奇迹了! 这个题解适合初学者使用。 知识点:string里面的str.find()函数: 可以查找字符串和字符,有就返回位置(开头是0), 没有就返回string::npos(unsigned int npos= 1)。 所以就可以开始~~微型打表~~微 阅读全文
posted @ 2019-02-15 21:06 小金羊 阅读(233) 评论(0) 推荐(0)
摘要:这个题过去的同学可以再来一题(P1567 统计天数): https://www.luogu.org/problemnew/show/P1567 是的,这个题其实也不是很难,就是前后比较,将天数压栈, 然后对那些天数进行排序,十分的~~水~~神奇... 这个题可以用打擂台(stack/queue),但 阅读全文
posted @ 2019-02-15 21:06 小金羊 阅读(163) 评论(0) 推荐(0)
摘要:天哪!竟然没人用优先队列! ~~小金羊又来水题了...~~ 优先队列中的大根堆帮助我们把时间复杂度降到O(n+logn) 首先我们先了解一下大根堆... 大根堆的性质:根节点比子节点大, 这意味着最上面的节点的值是最大的。 在STL模板库里面的优先队列也就是 大、小根堆 , 有自我维护的功能, 利用 阅读全文
posted @ 2019-02-15 21:05 小金羊 阅读(202) 评论(0) 推荐(0)
摘要:堆排序万岁! ~~小金羊又来水题了~~ cpp include include using namespace std; priority_queueqwq; long int gcd(long int a,long int b) {return (a%b==0)?b:gcd(b,a%b);} in 阅读全文
posted @ 2019-02-15 21:04 小金羊 阅读(263) 评论(0) 推荐(0)
摘要:小金羊发一篇不一样的题解: 这个题解不是讲解法的,是讲算法的... 众所周知,string在中被定义为是类型, 这意味着我们可以将它作为int一样的类型使用。 并且还有神奇的加减法: cpp string str,str2; str2="Hello!"; str=str2 '!'+' '+"worl 阅读全文
posted @ 2019-02-15 21:04 小金羊 阅读(237) 评论(0) 推荐(0)
摘要:大家用的方法都太好了!! 蒟蒻小金羊来发一篇玄学堆排。 ~~STL大法好~~! (附有核心code详解,完整code) 核心:两次排序,第一次自我排序,第二次整体排序。 核心code1: cpp string strsort(string str) { int len=str.size(); for 阅读全文
posted @ 2019-02-15 21:03 小金羊 阅读(242) 评论(0) 推荐(0)
摘要:~~这题真是水~~ 咳咳。。 基本思路:桶排 但是可以 剪枝。 剪枝方法: 好几种,可以用 set(集合) ,可以用 stack(栈) , 也可以像我一样的~~蒟蒻~~ 最大最小值 ...... ~~但是作者的 毒瘤数据 应该不会放过我们的...~~ AC code奉上 cpp include in 阅读全文
posted @ 2019-02-15 21:01 小金羊 阅读(272) 评论(0) 推荐(0)
摘要:不会其他排序的小金羊~~又来水题了~~ 本题我的思路:堆排,速度不需要算很快,AC就可以... 注意:初学者不宜抄此代码(压行严重) code: cpp include include include //调用优先队列请使用 using namespace std; //对于这道题,我们使用堆排序 阅读全文
posted @ 2019-02-15 21:00 小金羊 阅读(173) 评论(0) 推荐(0)
摘要:声明:本题解已经与其他题解重合, 且存在压行情况。 首先,这个题解是我有了惨痛的教训:全部WA... 先发一个CODE做声明: 这样运行出来的数据会非常令人难受, 因为long long int 类型的数据很难转移, 我们传给work里面的数据有可能是一个错误的数字, 甚至说程序直接卡崩(RE).. 阅读全文
posted @ 2019-02-15 20:59 小金羊 阅读(180) 评论(0) 推荐(0)
摘要:这道题可以用简单的~~蒟蒻~~do while循环,方式:直到型 因为是~~萌新~~/~~蒟蒻~~,所以并不知道这道题的时间/空间复杂度是多大 脚踩std( ^▽^ )摩擦 cpp include include define temp2 2//最初的步数 using namespace std; 阅读全文
posted @ 2019-02-15 20:56 小金羊 阅读(696) 评论(0) 推荐(0)
摘要:cin其中有很多小众的函数与其他重叠 不妨~~拿来用用~~(作死不止) 划重点!!! 1.cin.get(),相当于c里面的getchar(),可以往里面输入字符 2.cin.getline(),相当于string里面的getline(),不同的是可以控制输入的字符串长度 3.cout.put(), 阅读全文
posted @ 2019-02-15 20:55 小金羊 阅读(233) 评论(0) 推荐(0)
摘要:既然这个题~~这么水~~ 大家不如来~~盘点一下算法~~呗 首先说一个事:逗号表达式 这玩意的值是最后一个表达式的值 那么我们就可以愉快的放进循环条件里摩擦 ~~话说这个应该是基础吧,大多数代码都可以这样干~~ 具体可以后面看代码(会有注释) 好的,下面是~~正题~~(真·不正) 方法一:getch 阅读全文
posted @ 2019-02-15 20:53 小金羊 阅读(260) 评论(0) 推荐(0)
摘要:今天三个题的考试。 题解(不会的T3)原作: 先说会的T1: T1实际上是一个水题 主要思路是要进行查找 于是就有了暴力的搜索方式:枚举 没有优化,不知道可否过。 上题目: 小J的五子棋 小J非常热爱玩游戏,尤其喜欢五子棋。 五子棋是一款这样的游戏: 在一个N*N的网格上,玩家依次在格子上放下棋子, 阅读全文
posted @ 2019-02-14 11:40 小金羊 阅读(185) 评论(0) 推荐(0)
摘要:然而什么时候博客园也支持markdown就好了。 博客园,一个新的开始,我的新博客,可以把洛谷的题解搬一搬了。 还有我的笔记,赶脚还是不错的。 Welcome to my blog on cnblogs! 现在已经设置博客园支持markdown,将同步博客于简书、洛谷。 洛谷地址: 外加简书: 行吧 阅读全文
posted @ 2019-02-14 11:19 小金羊 阅读(140) 评论(1) 推荐(0)