02 2020 档案

摘要:可达? 题目描述 小明有一张N个点M条边的有向无环图,他想知道从每个点出发能够到达的点的数量。N,M≤30000。 输入 第一行两个整数N,M,接下来M行每行两个整数x,y,表示从x到y的一条有向边。 输出 共N行,表示每个点能够到达的点的数量。 样例输入 样例输出 题解 对于节点x和y如果x可以到 阅读全文
posted @ 2020-02-29 14:30 落水清心 阅读(197) 评论(0) 推荐(0)
摘要:线段树 概念 线段树是一颗二叉树,二叉树的节点保存着区间信息,跟节点表示1 n,左右子节点分别表示左右各半区间,如图: 由此可以看出,二叉树最后一层有n个节点,所以二叉树的层数为O(logn)这也使得二叉树的查询效率为O(logn),但是最后一层可能不为满二叉树。 应用 对于二叉树的适用范围,由于线 阅读全文
posted @ 2020-02-28 14:00 落水清心 阅读(198) 评论(0) 推荐(0)
摘要:牛客寒假基础训练营3 A:牛牛的DRB迷宫I 一道记忆话搜索题,对于一个点(x,y)考虑(x 1,y)和(x,y 1),根据是否允许移动进行更新,如果(x 1,y)不等于'R'则(x,y)位置加上(x 1,y)处的值,如果(x,y 1)处不等于'D'则(x,y)处加上(x,y 1)处的值,一直这样更 阅读全文
posted @ 2020-02-26 22:27 落水清心 阅读(180) 评论(0) 推荐(0)
摘要:牛客寒假基础训练营4 A:略 B:略 C:子段乘积 这一题的区段乘积,一开始我的思路就被带到了前缀积(不知道有没有这个东西)的思路上面一直在想怎么通过可知的左右模数求区间模数,尝试了欧几里得算法但是无奈这个算法不是很会,而且起初的思考方向就不对,所以从这题开始这场基本就崩了。下面说说正确解法,题解说 阅读全文
posted @ 2020-02-26 22:23 落水清心 阅读(160) 评论(0) 推荐(0)
摘要:牛客寒假基础训练5 A:模板 签到题,但是我竟然WA了一次真的十分的伤心,一开始算的字符串中不同的字符个数再加上字符串长度差值,交上去就WA了,后来改成了用最长字符串的长度减去从头开始遍历是字母相同的个数,就AC了,其中原因至今不明。。。。。~~让我再仔细研究研究~~ 最近写题思路都能想到,但是老是 阅读全文
posted @ 2020-02-26 22:20 落水清心 阅读(125) 评论(0) 推荐(0)
摘要:"Codeforces Round 624 (Div. 3)" A. "Add Odd or Subtract Even" : 对于一个数,你可以执行操作:加一个奇数,或者减一个偶数,给出两个数a,b,判断最少执行几次操作可以由a得到b。分情况讨论即可。 阅读全文
posted @ 2020-02-25 15:31 落水清心 阅读(221) 评论(0) 推荐(0)
摘要:"Codeforces Round 620 (Div. 2)" D. Shortest and Longest LIS 题解: 贪心即可,对于最短序列,我们尽可能用可用的最大数字放入序列中,对于最长序列,我们尽可能用可用的最小数组放入序列即可,再处理序列时,当满足当前防止变化规律的符号直接防止,如果 阅读全文
posted @ 2020-02-24 17:05 落水清心 阅读(210) 评论(0) 推荐(0)
摘要:permutation: 在遇到全排列问题时,在数据量较小的情况下可以使用dfs的做法求得全排列,同时我们也知道在STL中存在函数next_permutation和prev_permutation,这两个函数可以较快的求出全排列,而这两个函数的实现却不是依赖于搜索算法(dfs)的。 分析: 以nex 阅读全文
posted @ 2020-02-22 19:22 落水清心 阅读(370) 评论(0) 推荐(0)
摘要:RMQ问题: RMQ问题是Range Maximum Query的缩写顾名思义就是区间最大值问题,对于这类问题的求解方法是——ST算法,ST算法采用一种类似动态规划的求解方式,可以在O(nlogn)内处理,O(1)询问,但是不支持修改,因此适用于极大数据量的查询问题。 ST: 对于a[1],a[2] 阅读全文
posted @ 2020-02-22 13:39 落水清心 阅读(219) 评论(0) 推荐(0)
摘要:GCD: 题目描述: 给定一个长度为N的数列A,以及M条指令,每条指令可能是以下两种之一: 1、“C l r d”,表示把 A[l],A[l+1],…,A[r] 都加上 d。 2、“Q l r”,表示询问 A[l],A[l+1],…,A[r] 的最大公约数(GCD)。 对于每个询问,输出一个整数表示 阅读全文
posted @ 2020-02-21 16:25 落水清心 阅读(644) 评论(0) 推荐(0)
摘要:任务安排一 题目描述: N个任务排成一个序列在一台机器上等待完成(顺序不得改变),这N个任务被分成若干批,每批包含相邻的若干任务。从时刻0开始,这些任务被分批加工,第i个任务单独完成所需的时间是Ti。在每批任务开始前,机器需要启动时间S,而完成这批任务所需的时间是各个任务需要时间的总和(同一批任务将 阅读全文
posted @ 2020-02-21 13:14 落水清心 阅读(136) 评论(0) 推荐(0)
摘要:求和 题目描述: 出题人很困,所以不编题面了。 给一个长度为n的序列,你需要求出其中连续m个数的和的最大值是多少。 输入: 第一行给出一个数字T,表示数组总数 (t每组数据的第一行有两个数字 n,m (0第二行有n个数字ai (0 对于每组数据,输出最大的连续m个数之和 样例输入: 样例输出: 题解 阅读全文
posted @ 2020-02-21 10:13 落水清心 阅读(140) 评论(0) 推荐(0)