-
在Debain10上安装和配置Mysql【Navicat远程连接10060错误和1130错误
目录 目录 前置需要 安装 Mysql 修改用户权限实现远程连接 打开服务器 Mysql 使用的 3306 端口 参考文章前置需要 首先当然是安装一个 Debian10 系统了~我这里是在虚拟机里操作的,直接安装在主机上应该是效果一样的 如果网络有问题请看猹的另一篇文章如何修改Debian10的网络 当然,如果新安装一个系统,还是推荐用 oh-my-zsh 先美化一下,参考->拿到一个 linux 服务器应该做什么 纯净版的 Debian10 是很多软件都没有预装的,为了下载网络资源,我们需要先安装一个应用 wget a...…
-
HDU-1540 Tunnel Warfare 题解 线段树特殊储存/set 集合容器红黑树的应用
题目链接:Tunnel Warfare题目题意地~道战 嘿!地~道战现在有一条地道,告诉你有 n 个出口,沿着地道是 1,2,3,,n 依次排列的然后有 m 个操作: D x 表示摧毁一个出口 x,摧毁之后 x 这个出口两边的地道不再相连 Q x 是访问于 x 这个出口相连的能用的出口总共有几个,包括 x R 将上一个被摧毁的出口重建解题思路法一:从题意来看,就是一个单点更新和区间求和的题,但问题是如何来求 与这个点相连的能用的点 百思不得其解之后看博客去搞懂了这个巧解的做法是,储存这个节点所管理的区间里 从最左端往右有几个能用的点 从最右端往左有几个能用的点 整个区间里的几...…
-
服务器学习历程 Part 3 - 超神的 Vim
Vim 简介 常用命令 1. f 命令 2. 指定范围操作1 3. 指定范围操作2 4. 运行 bash 命令 5. normal 命令 6. 宏命令 修改 vimrc 文件 - 强大的自定义命令! set vim 设置 map 自定义映射关系 强大的命令宏 重要事项 后话 参考视频Vim 简介vim 是 linux 系统中最常用的一个文本编辑器,很多人说 vim 是无敌的编译器,话不能说满,但用过的绝对都说好【用过不说好那肯定是没学会的情况下勉强用了一...…
-
【Codeforces Global Round 7】C. Permutation Partitions 题解
题目链接:C. Permutation Partitions题目题意给你 n 个数,把这些数分成 k 组,每组里的最大值相加必须最大,也就是说:找到这 n 个树中最大的 k 个数,这些数必须各自存在于单独的一组解题思路这道题其实就是高中学 Cnm 的那种排列组合的分组问题,简单来说就是插卡插一张卡,分成两份,插两张卡,分成三份。。。而这道题更简单,分组的间隔已经明确告诉你了,你只需要求出每两个标值中间有几种插卡方式即可 用 map 将【数-下标】 从大到小 存起来 求出最大的 k 个数,并将这些数的下标 从小到大 存起来 两个数中间间隔的人数(+1)即为分组的方法数 注意第一个人...…
-
【Codeforces Global Round 7】B. Maximums 题解
题目链接:B. Maximums题目题意已知数组 b 和条件 bi = ai - max(0, a0, a1, ..., a(i-1))求数组 a解题思路这道题是一道【反向贪心】,听别人说的这个名词= =实际上就是第一个数你可以确定一定是 0 ,之后每一个数都可以由前面已经获得的数来确定。而贪心就是“走一步看一步”,每次操作获得“当前看起来是最优的解”,所以当作贪心也没什么问题【记得反向思维 首先明确求出来的数就是数组 a 中的数,因此我们获取到【已经求出来的数的最大值】 然后由 bi = ai - am 得到 ai = bi + am 一步一步的求出所有的 ai代码#includ...…
-
【Codeforces Global Round 7】A. Bad Ugly Numbers 题解
题目链接:A. Bad Ugly Numbers题目题意给你一个数字 n ,输出一个数字 s ,s 满足一些要求 s 的位数等于 n ,即 s 由 n 个数字组成 s 这个数不能被其中的任何一位整除解题思路 如果是一位数的话,它当然可以被自己整除,所以直接输出 -1 如果是多位数找一个特殊的数即可,如 233 或者 277代码#include <iostream>using namespace std;typedef int hip;int main() { ios::sync_with_stdio(0); cin.tie(0); hip ...…
-
线段树学习总结 Part 3 - 离散化
本文是关于 线段树 + 离散化 的讲解 如果你对线段树完全不了解,建树时有一些疑惑,看本文有点不理解,可以试试先看一下 线段树的建树方法与原理 如果你已经对于线段树的基础操作(单点/区间修改,查询)还不太了解,请观看 线段树的一些基础操作被迫营业最近这一段时间,嘛~做了一些事情,虽然都在原计划内,但开始的原因还是有点被迫开始的意思。借口一个被迫之名激励自己做事情,对我来说是挺受用的 =w= 我可不是什么变态啊目录 离散化的意义 离散化的方法 线段树的操作 参考文章 线段树 + 离散化例题 例题完整代码 基础线段树模板离散化的意义比较了解猹的人会发现一个事情,就是猹在介绍...…
-
python 玩玩乐 - moviepy 剪辑视频变成 gif 图
此篇来源于被迫营业,但是我很开心本篇附赠解决 RuntimeError: No ffmpeg exe could be found. 报错的方法【可能有效目录 本篇附赠解决 RuntimeError: No ffmpeg exe could be found. 报错的方法【可能有效 目录 前置需要 提示:安装 moviepy 的坑 录制视频 写程序 参考文章 前置需要 提示:安装 moviepy 的坑猹这里依然是在 linux 服务器中进行的操作 首先你得安装 python 吧,我这里用的还是 python3 然后...…
-
【一败涂地】A Simple Problem with Integers 题解
题目链接:A Simple Problem with Integers装模作样的题目装模作样的解题思路这道题其实是线段树(完全不知道线段树的同学从头学起叭)的 区间修改 的模板题懂得线段树区间查询的同学其实很好操作(不懂得话先看看线段树的基础操作吧)。区间修改跟区间查询有点类似,为了节约时间,我们添加一个懒标记…惹~懒得写了,区间修改不太知道的同学去看猹的博客吧注意事项!!!我认为,可能是我见识短。。。我认为这道题有毒我的数组原本开的是 2e5 + 9 结果一直 WA后来我对比了以前 AC 的代码(对了我现在算是在复建),发现没有差别,唯一的就是 AC 代码的范围是 1e5 + 9 。。...…
-
服务器学习历程 Part 2 - 拿到一个 linux 服务器应该做什么
目前此文章全都是在 Ubuntu 16.04 中的操作此篇集成了 公钥登录 OhMyZsh 自定义登录提示 安装python3.6 安装mysql 安装phpmyadmin 安装Scrapy 安装requests,etree目录 目录 已经登录远程服务器设置公钥登录 使用 Oh My Zsh 优化命令终端 更换样式 启用插件 其他事项 添加一点自定义的登录后显示的提示 安装 python3.6 安装 mysql 安装 phpmyadmin 营业 安装 Scrapy 安装网站连接库 request...…
-
1045 快速排序 (25分) - 有点 DP
题目链接:1045 快速排序 (25分)题目解题思路这个题有点动态规划的意思。主元的意思就是,这个数的左边全是小于它的数,右边全是大于它的数。这样在快排的时候它就有可能作为主元,就是不动的那个。 将数按顺序存起来 从前往后遍历,将前面的最大的数存起来与当前数比较,如果这个数前面的最大值小于当前值,说明这个数前面都是小于它的数 从后往前遍历,将后面的最小的数存起来与当前数比较,如果这个数后面的最小值大于当前值,说明这个数后面都是大于它的数 获得两组标记之后,求交集,交集中的数即为前面的数都小,后面的数都大的主元数了代码#include <iostream>using n...…
-
【一败涂地】1025 反转链表 (25分)
题目链接:1025 反转链表 (25分)题目解题思路 先心态爆炸一会 这题真的把我心态弄得特别崩了。一开始用 map<string, pair<int, string>> 存原数据,vector 存个按顺序的地址,不行,样例过了一直不过。 后来有我就不说了的博客说有可能有的节点不在链表里。。。我就信了,然后加了个 set 最后遍历一遍输出没有在链表里的节点。 我复制一个莫名其妙的代码,AC 了,从此忘了爱,做别的题不香吗??? 能做的题都做完了,我回来了,我是来谈条件的!从头写,哈哈哈,真快乐。欸吖错了,错了错了错了错了错了,啊啊啊啊...…
-
HDU 5643 King's Game 题解 - 约瑟夫环问题简结
题目链接 - HDU5643题目In order to remember history, King plans to play losephus problem in the parade gap.He calls n(1≤n≤5000) soldiers, counterclockwise in a circle, in label 1,2,3…n.The first round, the first person with label 1 counts off, and the man who report number 1 is out.The second round, the...…
-
H_On简结 - 思路超清晰的解释约瑟夫环问题
前言在一年半前还是个新生,第一次接触专业的编程教育的我刷题刷的很起劲,经典的猴子选大王问题就是在那时候遇到的,那时候我花了好久,用数组加判断实现了模拟选人,最终做出来了这道题。如今已经熟练了掌握各种容器,对编程的理解也不可同日而语,但模拟已经不能满足如今的需要了。好久以前老师曾助教新生时发现一个孩子用了 “公式推导法” 却说不出个所以然,于是让我们来解释,当时我绞尽脑汁没有想明白,最后有几个慧根灵光的同学说了说,感觉没懂,于是不再深究。直到前几天做题又遇到了这个题,模拟时间超限,公式法又不会,于是等到比赛结束,开始用心的研究【约瑟夫环】了。目录 简介 基础题意 ...…
-
【Codeforces Round#619 (Div. 2)】B. Motarack's Birthday 题解
题目链接:B. Motarack’s Birthday题目题意给你 n 个数,其中有一些可能被替换成了 -1 。现在让你用一个数 k 替换所有的 -1 ,使两个相邻的数 差的绝对值的最大值 m 最小。输出 k 和 m 的值。解题思路这个题主要是需要处理 -1 与旁边 不是 -1 的数 的关系。 连续的 -1 替换以后相邻差值是 0 不用管 连续的非 -1 数邻差直接在遍历的时候记下最大值即可然而 k 的值如何确定呢,因为替换以后的 k 与相邻的数的最大的差值肯定是出现在不需要替换的最大和最小的数旁边,因此我们要获取这两个数。用这两个数确定出平均数就是差值最小的,再将这个数与两端的数的...…
-
【Codeforces Round#621 (Div. 1 + Div. 2)】D. Cow and Fields 题解 - 最短路
题目链接:D. Cow and Fields题目一直觉得英文题题面很难理解,然后也有题目链接,很纠结要不要每次都把题目再写一遍,昨天看大佬题解是贴一个截图上去,感觉也不错,以后我就这么干辣题意给你 n 个点,t 条边,k 个特殊点。问你如何给这个图加一条连结两个特殊点的边,使新图点 1 到点 n 的 最短路最长。问你最长的最短路的值。(好绕啊)解题思路参考这位大佬的题解 先储存所有的特殊点,因为结果只是求路长,所以点的坐标存成 从 0 开始 无所谓,从 0 开始操作起来比较方便 接下来储存边,同样是使点的标号从 0 开始,使用 map 构建邻接矩阵节约空间并且方便之后查询 找出 点...…
-
【Codeforces Round#621 (Div. 1 + Div. 2)】C. Cow and Message 题解
题目链接:C. Cow and Message题目一直觉得英文题题面很难理解,然后也有题目链接,很纠结要不要每次都把题目再写一遍,昨天看大佬题解是贴一个截图上去,感觉也不错,以后我就这么干辣题意有一个字符串,里面有很多子序列,组成子序列的字母在字符串中的位置组成一个 等差数列 ,这些子序列可能有好多种组成方式,问你在所有的子序列的组成方式的个数中的最大值是多少。解题思路害,一开始没意识到位置只能是等差数列,只在想排列组合了。在题意的情况下,只有一个字母组成的子序列和两个字母组成的子序列中有可能出现最大值。所以我们就想办法找出两个字母组合的最大值就可以了。(一个字母的可以直接在输入的时候求...…
-
【Codeforces Round#621 (Div. 1 + Div. 2)】B. Cow and Friend 题解
题目链接:B. Cow and Friend题目一直觉得英文题题面很难理解,然后也有题目链接,很纠结要不要每次都把题目再写一遍,昨天看大佬题解是贴一个截图上去,感觉也不错,以后我就这么干辣题意有 n 种步长,规定每一步只能走给定的步长,问你从 (0, 0) 走到 (x, 0) 需要几步解题思路如果我最长的步长大于 x/2 ,那么说 我最多走两步肯定可以走到 x ,就是走一个 等腰三角形,很好理解叭。最终的思路是,在输入的时候用 map 记录步长,用 ma 记录最大步长 如果一步就能走到,那就是 1 【防止 x 这个长度在所有步长中且不是最大步长 除去上面那种情况,如果最大步长大于 x...…
-
【Codeforces Round#621 (Div. 1 + Div. 2)】A. Cow and Haybales 题解
题目链接:A. Cow and Haybales题目一直觉得英文题题面很难理解,然后也有题目链接,很纠结要不要每次都把题目再写一遍,昨天看大佬题解是贴一个截图上去,感觉也不错,以后我就这么干辣题意有 n 个按顺序放好的草堆,k 次搬运机会,每次只能从一个草堆搬运一个单位的草到相邻的另一个草堆,问你搬运完之后第一堆草堆的草最多会是多少。解题思路这个题有几个解体的点: 草堆是按顺序摆放的,求 第一堆 最大是多少 草只能在 相邻 的草堆中搬运 一次只能搬运一个单位的草那么大家思考一下,我们只要尽量把后面的草搬到第一堆即可 第二堆的草搬到第一堆只要搬一次 第三堆的草搬到第一堆要搬两次 ...…
-
H_On Template - H_On 自制程序模板推荐
起源要说起猹开发这些模板的原因呢~一个是大家也知道,猹这个寒假更新了STL的介绍,两篇!可以说是人生第一次经历了大量练习获得了很多知识要说直接原因,就是昨天打 CF 的时候 sages7 给我推荐了一个好用的 cf 小工具,可以自动爬取比赛题对外的测试数据,还可以用命令测试提交代码。然后它支持在生成的题目文件夹里生成一个编程代码模板,这个是自己给定的。正好我早就想优化一下我的那些乱七八糟的代码了,于是趁此机会,整活一天终于获得了一些收获,现在迫不及待的开始写分享博客了owo其实我想优化代码的想法很久了,不知道大家有没有遇到这种情况,有时候会经常时不时的就需要写一些比较结构体,用来让 se...…