摘要: 2018级19班班费收支情况登记表 序号 日期 项目 经办人 票号 收支(元) 结余(元) 1 12/24/2020 3831 2 12/25/2019 化学试卷 王文迪 1 -93.5 3737.5 3 12/30/2019 元旦蛋糕卡充值 2 -600 3137.5 4 12/31/2019 元 阅读全文
posted @ 2020-09-06 21:17 李昊哲 阅读(348) 评论(0) 推荐(0) 编辑
摘要: 上课信息 课表 | 日期/时间 | 周二 | 周三 | 周四 | 周五 | 周六 | 周日 | | | | | | | | | | 7:30~7:55 | 早英 | 早语 | 早英 | 早语 | 早英 | 早语 | | 8:00~8:40 | 语文 | 物理 | 数学 | 物理 | 英语 | 化学 阅读全文
posted @ 2020-02-16 15:55 李昊哲 阅读(958) 评论(6) 推荐(0) 编辑
摘要: "【CF838E】 Convex Countour" 首先观察题目的性质 由于是凸包,因此不自交路径中的一条边$(x, y)$的两端点只能向与$x$或$y$相邻的结点连边。 举个栗子,若选取了一条边$(x, y)$,且假设编号从$x$到$y$结点已经在一条不自交路径中(不考虑特殊情况),那么向外扩展 阅读全文
posted @ 2019-10-16 18:21 李昊哲 阅读(312) 评论(1) 推荐(0) 编辑
摘要: 定义 快速求a^b%c的算法 原理 指数可以被二进制分解 那么a^b可以分解为a^2^k1*a^2^k2*…… 又显然a^2^(k+1)=a^(2^k*2)=(a^2^k)^2 所以可以将指数在二进制下从低位向高位递推,每次将底数平方,若该位是1就将答案乘上底数,直到指数为0。 实现时可以每次将指数 阅读全文
posted @ 2018-10-16 20:19 李昊哲 阅读(974) 评论(0) 推荐(0) 编辑
摘要: 刷题训练 初学者 有一定语言基础,但是不了解算法竞赛,水平在联赛一等奖以下的。 参考书:《算法竞赛入门经典——刘汝佳》,《算法竞赛入门经典训练指南——刘汝佳》 题库:洛谷(历年题目),USACO training(有一定基础的可以考虑跳过前面几个Chapter),USACO月赛 进阶学习 联赛一等奖 阅读全文
posted @ 2018-10-13 23:50 李昊哲 阅读(502) 评论(2) 推荐(2) 编辑
摘要: POJ2942 洛谷UVA1364(博主没有FQuva实在是太慢了) 以骑士为结点建立无向图,两个骑士间存在边表示两个骑士可以相邻(用邻接矩阵存图,初始化全为1,读入一对憎恨关系就删去一条边即可),则题意变为求图中不在任何奇环(结点数为奇数的环)中的点的数量。 一个环上的点一定属于一个双连通分量(两 阅读全文
posted @ 2018-08-25 20:37 李昊哲 阅读(345) 评论(0) 推荐(0) 编辑
摘要: 概述 若一个无向图的结点可以分为不相交的两个部分使得每条边的两个端点分别在不同的部分,则称这样的无向图为二分图(bipartite graph) 算法:黑白二着色(bicoloring) 扫描所有结点,从未访问过的结点开始,将其为染色邻接点染为不同的染色。若已染色的邻接点与当前结点颜色相同,则该图不 阅读全文
posted @ 2018-08-24 15:28 李昊哲 阅读(486) 评论(0) 推荐(1) 编辑
摘要: 概述 在一个无向图中,若任意两点间至少存在两条“点不重复”的路径,则说这个图是点双连通的(简称双连通,biconnected) 在一个无向图中,点双连通的极大子图称为点双连通分量(简称双连通分量,Biconnected Component,BCC) 性质 算法 在Tarjan过程中维护一个栈,每次T 阅读全文
posted @ 2018-08-23 22:59 李昊哲 阅读(7183) 评论(13) 推荐(8) 编辑
摘要: POJ1523 题意很简单,求删除割点后原先割点所在的无向连通图被分成了几个连通部分(原题说prevent at least one pair of available nodes from being able to communicate on what was previously a ful 阅读全文
posted @ 2018-08-23 16:42 李昊哲 阅读(308) 评论(0) 推荐(0) 编辑
摘要: 这是一篇玄学文章 一、编译优化 1 #pragma GCC optimize("O3") 2 #pragma G++ optimize("O3") 比赛时除非遇到常数很大可能会卡的暴力题否则一定不要用!玩火自焚! 二、I/O优化 核心:利用getchar()和putchar()这两个底层函数和位运算 阅读全文
posted @ 2018-08-22 22:55 李昊哲 阅读(658) 评论(0) 推荐(0) 编辑
摘要: 概述 在一个无向图中,若删除某个点u后连通分量数目增加,则称点u为该无向图的一个割点(cut vertex) 引理 无向连通图DFS树 从一个节点出发进行DFS,将后访问的结点设为前访问结点的孩子,DFS经过的边叫做DFS树的树边(tree edge),第一次处理时从后代(descendant)指向 阅读全文
posted @ 2018-08-22 17:39 李昊哲 阅读(572) 评论(0) 推荐(0) 编辑
摘要: 洛谷P2615 很简单的模拟题……每枚举一个点只要保存上一个点的x,y值即可,不用开数组存放 另外题目中对于K的操作都在K-1的九宫格范围内,所以我们巧妙运用++和--就可以做到每个分支一行代码 还有一点,题目中第4点说“若(K-1)既不在第一行也不在最后一列”,这个条件不必判断,因为从1~n^n每 阅读全文
posted @ 2018-08-22 10:28 李昊哲 阅读(247) 评论(0) 推荐(0) 编辑
摘要: 洛谷P2827 其实是一道不是很难的模拟题,暴力好像可以拿80,AC的话要发现其中隐含的单调性 首先是一个小技巧,每次将所有蚯蚓的长度都+q肯定时间复杂度很大,那我们就想,其他所有的蚯蚓加,就相当于取出的蚯蚓减,再存储一下这是第几秒,输出或切蚯蚓的时候将存储的值加上秒数*q即可 然后就是题目中的单调 阅读全文
posted @ 2018-08-20 11:34 李昊哲 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 洛谷P2822 数学真重要啊…… 其实解这一题的关键就是组合恒等式:C(n,m)=C(n-1,m)+C(n-1,m-1),然后再知道组合数的矩阵(杨辉三角)和题中n,m的关系就很容易解决了(然而做这题之前我并不知道组合恒等式于是杯具了) 由上文提到的几何恒等式,我们可以将组合数打成如下矩阵(C(i, 阅读全文
posted @ 2018-08-20 11:03 李昊哲 阅读(285) 评论(0) 推荐(0) 编辑
摘要: 洛谷P1563 看完了noip2017觉得noip2016是真的简单……2017第一题就卡住2016第一题10分钟AC 思路: m<=100000很明显暴力模拟就可以 唯一有一点点难度的地方就是小人的朝向对位置的影响 写个函数用if else直接判断也可以但这里提供一个更简单的方法:将指令存储在数组 阅读全文
posted @ 2018-08-19 00:10 李昊哲 阅读(259) 评论(0) 推荐(0) 编辑
摘要: 洛谷P3959 其实就是一道暴力搜索题……只是需要一个状态压缩的剪枝比较难想而已 这根本不叫dfs!只是一个递归而已……开始就被dfs坑了 思路: 首先一个基本的预处理 数据范围n≤12,m≤5000,说明肯定有很多没用的边,在读入的时候预处理掉就可以了,另外n很小可以用邻接矩阵存图访问快 解法一: 阅读全文
posted @ 2018-08-18 17:44 李昊哲 阅读(371) 评论(0) 推荐(0) 编辑
摘要: 洛谷P3958 超级水的并没有用什么几何知识的几何题…… 直接爆搜一遍最后判断有没有与上/下表面相连的球之间连通即可……O(n2)不动脑子的复杂度 最多只是用一下并查集来判断两个点是否连通…… 具体细节不必赘述代码如下(超简洁只有51行) 我只想提醒一点……判断球是否与上下表面相邻(读入处理的地方) 阅读全文
posted @ 2018-08-17 22:39 李昊哲 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 洛谷P3952 这一道模拟题是真的特别考细心的一道题……调了半天才调出来……要是今年noip考到这样的模拟题我可能就凉凉 看到洛谷题解上有人用栈、递归,还有说离线判断的,我就在线外加各种条件就写出来了啊……正好100行 思路: 设变量ci[i]表示第i层的时间复杂度是O(n^ci[i]) 对于每次进 阅读全文
posted @ 2018-08-17 17:33 李昊哲 阅读(391) 评论(0) 推荐(0) 编辑
摘要: 洛谷P3951 看到题目,很容易想到这一题是求使ax+by=c(a,b,c∈N)无非负整数解的最大c 由裴蜀定理可知方程一定有整数解(a,b互素,gcd(a,b)=1|c) 解法一:暴力枚举 看到题目我的第一想法是求出ax+by=1的解然后枚举c使x,y扩大c倍后仍无非负整数解 枚举c应该要从1到a 阅读全文
posted @ 2018-08-15 18:14 李昊哲 阅读(220) 评论(0) 推荐(0) 编辑
摘要: 洛谷P2948 看到题目就觉得这是动规但一直没想到如何状态转移……看了别人的题解之后才有一些想法 f[i][j]:前i单位时间能力值为j可以滑的最多次数 lessons[i][j]:结束时间为i,获得能力为j的时长最短的课程的开始时间 ski[i]:能力值为i可以滑的时间最短的坡的时长 d[i]表示 阅读全文
posted @ 2018-08-14 17:32 李昊哲 阅读(401) 评论(0) 推荐(0) 编辑