2019 年 7 月 26 日 周五 学校 ACM 暑假训练第三期第一周倒数第二天!上午三件事情:1.给同学调试了一个 bug(调试了好长时间,最后是 r 写成了 l)这种毫无逻辑的细节错误真的难找,我昨天也犯了个差不多的错误 mid=(lef+rig 写成了 mid)/2;2.杭电多校 02 的倒数第二题 3.大致看了一下 Manacher 马拉车算法和 kmp 的思想本质相同,就是充分利已经有的信息,甚至更加直观一点。杭电多校训练战绩第一场 0 第二场 1 过于真实,也过 2019ACM训练日志
一天攻克最大流算法 墙裂推荐这篇博客主要写的算法都正确,而且都有一些可取之处。01:Edmonds-Karp 算法 EK 算法据说是最简单的。看了这篇博客感觉 Ford-Fulkerson 算法和 EK 算法是同一个,虽然我知道《算法导论》上说了 Ford-Fulkerson 算法有三种时间复杂度的。但大家都是这么评价 EK 算法的:由于 EK 算法容易超时,所以这个在比赛中不怎么用。可是我对最大流太懵逼了,还是从最简单、最辣鸡的开始吧!稀里糊 最大流
HDU6608 威尔逊定理 哇偶,看到标程之后才发现这题超级简单,只有求逆元,判素数,大数相乘三个函数和 main 函数中寥寥记剧就可以 AC。没知识真可怕,快来补一下.这道题目主要用到了(p-2)!\equiv1(\bmod\quadp)和快速求逆元\frac{1}{a}\equiva^{p-2}(\bmod\quadp)两个公式的条件都是 p 为质数。另外还考察到了素数的密度分布,在大数里面质数分布的比较紧密,很快就可以在一个质数的 题解 HDU
P1801 黑匣子_NOI 导刊 2010 提高(06) 题目链接关于题意的理解 Theinputofthisquestionisalittlestrange.query[i]meansthatafteryouaddthequery[i](th)number,querytheithbiggernumberinthebox.调试了不少时间,有两个地方写错了,一个是右区间是[SegMid+1,SegR],另一处是 get_Nth_num 函数传参 M 错传成 N 了。#in 题解 线段树
2019 年 7 月 29 日 周一 今天下午又打多校赛了,这次水有点浑,一条鱼也没摸到。其实,只差一个改 longlong 就能 ac 的,主要是我们组违规操作,三个人各自打代码(因为一开始想到是线段树的题目但没有完整思路),后来我试图去理解队友的代码,但发现太难理解,就效率比较低,最后痛失一题。不过,考完试我发现一个小优化的地方:权值线段树要离散化,但是不要去重。这样就可以不用考虑一个值有多个数字还要判断有几个?取几个?的问题。权值线段树模 2019ACM训练日志 2019杭电多校训练
Git 实用教程 4:实战 001 将文件放入 Git 仓库总结一下,将工作目录的文件放到 Git 仓库只需要两步:StepOne->gitadd 文件名 StepTwo->gitcommit-m"你干了啥"gitstauts 的返回信息 Untrackedfiles 说明存在未跟踪的文件(下边红色的那个)所谓的“未跟踪”文件,是指那些新添加的并且未被加入到暂存区域或提交的文件。它们处于一个逍遥法外的状态,但你一旦将它们加入暂存区域或提交到 Git 仓库, git学习心得
2019 年 7 月 27 日 周六 今天比较混,白天看了一天的后缀自动机的构建过程,把它的步骤记了个差不多,但是原理真的弄不懂,我认输了。晚上吃过饭后出题目,蓝红队伍互相出题目。 2019ACM训练日志
win10 bash 美化 字符问题我的问题是我通过控制台安装了字体,执行 install.shhttps://github.com/powerline/fonts 再次尝试,但是通过控制面板 > 外观和个性化将字体添加到 Windows> 字体和配置 bash 属性里的字体选择初始目录和切换默认终端为 zsh 调用 nano~/.bashrc 命令,在文件开头加入下面两行,顺序不可以颠倒 cd/mnt/c/Users/HearthStone/Desk win10Bash
周末早起来搞 vim gitbash 美化 https://github.com/xnng/my-git-bashcvs,傻瓜执行就 OK(注意重启 gitbash 后有效)解决 vim 中文乱码 vim/etc/vimrc 任意地方增加一行 setfileencodings=utf-8,gbk,ucs-bom,cp936 鼠标滚轮设置临时设置:setmouse=a 长久设置,在~/.vimrc 中添加 setmouse=a 配置文件路径 vim~/. vim
看完别人的后缀自动机博客,我.... 我是看了 2012 年陈立杰的 ppt 和这篇史上最通俗的后缀自动机详解说实话,我个人对两篇文章都不是特别满意。陈立杰的 ppt 详细讲了原理,但是不能完全看不懂;另外一篇还不错的博客,博主比较用心,画了很多图,讲的比较绕,过于详尽。还有一个不太好的地方,就是变量名没有概括变量的实际意义(或许是我自己记忆力不行吧)。我得自己总结一下,别人的东西总是不好用。 后缀自动机 ACM算法
主席树 模板 注意事项 前言在写注意事项之前,我先带着你熟悉一下主席树的基本实现思想。主席树的基本用途给你一个长度为 n 的数列处理多次查询给定的[l,r]区间内第 k 大(小)数的问题主席树的实现原理其本质就是建立 n+1 颗线段树(n 是区间内数字个数),但是在建立线段树的时候重复利用了之前已经建好的节点,从而节省了空间。如何建立、并管理好 n+1 颗线段树建立分下面两步:建立一颗空的线段树依次将数列的 n 个数 主席树 ACM模板
Git 实用教程学习 03:理论基础 学习参考文章目录 1.git 和 svn 相比较 svn 每次只记录改动的内容 git 每次都复制一个 copy(大家都夸 git 这个方法看似笨重,但对版本控制来说非常方便)咱也不知道,咱也不敢问!咱以后知道了再来写一下吧!2.git 的核心:维护三棵树你的本地仓库有 Git 维护的三棵“树”组成,这是 Git 的核心框架。这三棵树分别是:工作区域、暂存区域和 Git 仓库。工作区域(WorkingDirectory)就是你平时存放 git学习心得