随笔分类 -  BuaaCoding

北航软件学院学习OJ,网址是https://buaacoding.cn/index
摘要:1126 ModricWang's Fight with DDLs III 思路 由于题目中已经说明了时间经过了正无穷,因此初始位置是不重要的,并且每条边、每个点的地位是均等的。因此到达每个点的概率就是这个点的度数+1(可以停留就等于是有一条连向自己的边),最后的概率就是 $$\frac{\sum 阅读全文
posted @ 2018-01-07 00:21 AlvinZH 阅读(739) 评论(0) 推荐(0)
摘要:1119 AlvinZH's Fight with DDLs III 思路 难题,最小点覆盖。 分析题意,某一个任务,既可以在笔记本A的 $a$ 模式下完成,也可以在笔记本B的 $b$ 模式下完成。如果笔记本A处于x模式,那么所有可以在笔记本x模式的任务可以一起完成,B同理。这两句话作为题目核心,该 阅读全文
posted @ 2018-01-07 00:20 AlvinZH 阅读(594) 评论(0) 推荐(0)
摘要:中等·Bamboo's Fight with DDLs II 分析 一句话:给定字符串,求最长回文子序列长度,动态规划LCS思想的进阶应用 具体思路如下: 对于任意字符串,如果头尾字符相同,那么字符串的最长回文子序列等于去掉首尾的字符串的最长子序列加上首尾;如果首尾字符不同,则最长回文子序列等于去掉 阅读全文
posted @ 2018-01-07 00:19 AlvinZH 阅读(552) 评论(0) 推荐(0)
摘要:1118 AlvinZH's Fight with DDLs II 思路 中等题,贪心。 理解题意,每次攻击中,可以使某个敌人生命值 1,自己生命值减去∑存活敌人总攻击力。 贪心思想,血量少攻击高的要先消灭,所以以A/L作为参数排序,即将所有的敌人根据A/L从大到小排序。 遍历一次,对于排序好的敌人 阅读全文
posted @ 2018-01-07 00:18 AlvinZH 阅读(594) 评论(0) 推荐(0)
摘要:1125 ModricWang's Fight with DDLs II 思路 圆内被划分部分数的计算方式如下: 圆内部的每一个交点都使得总份数增加了一;除此之外,每一根直线段最后抵达圆周时,总份数也增加了一。 因此: 总份数应该是 $1+圆内部的交点数量+直线段的数量$ 直线段的数量等于 $C_n 阅读全文
posted @ 2018-01-07 00:17 AlvinZH 阅读(627) 评论(0) 推荐(0)
摘要:1117 AlvinZH's Fight with DDLs I 思路 简单题,动态规划。 本题与期末练习赛B题很相似,而且更为简单些。简化问题:在数字序列上取数,不能取相邻的数。 DP数组定义,dp[i]:到达第i层所能取得的最大经验值。初始化:dp[0] = x[0], dp[1] = max( 阅读全文
posted @ 2018-01-07 00:16 AlvinZH 阅读(377) 评论(0) 推荐(0)
摘要:简单·Bamboo's Fight with DDLs III 分析 一句话:贪心,简单哈夫曼应用,要求的其实是所有结点的值与权值的乘积之和,也就是带权路径长。 可以理解为非叶子节点的权值的和,这里的权值就是零食个数 样例分析: 1 2 3 1 2 3 3 3 6 3+6=9 所以得到6的同学是没有 阅读全文
posted @ 2018-01-07 00:16 AlvinZH 阅读(469) 评论(0) 推荐(0)
摘要:1124 ModricWang's Fight with DDLs I 思路 这道题本质上就是一个多项式求值,题目中的n需要手动算一下,单位复根可以根据复数的性质来求,即$e^{i\pi}+1=0$,对指数$i\pi$进行乘除就能得到各个单位复根,带进多项式即可得到答案。需要注意的是,这里的函数次数 阅读全文
posted @ 2018-01-07 00:15 AlvinZH 阅读(445) 评论(0) 推荐(0)
摘要:简单·Bamboo's Fight with DDLs I 分析 一句话:要装满的完全背包问题。 对比完全背包只有一点要改变:初始化为负无穷 传送门: https://buaacoding.cn/problem/101/index 装满的01背包,有何不同大家自己思考 代码样例 数据 由于后期数据问 阅读全文
posted @ 2018-01-07 00:14 AlvinZH 阅读(472) 评论(0) 推荐(0)
摘要:1116 ModricWang likes geometry 思路 难题,非常考察几何知识,放在这里作为计算几何场次的最难的题。 "原题地址" "原版题解" 代码 阅读全文
posted @ 2018-01-03 19:45 AlvinZH 阅读(347) 评论(0) 推荐(0)
摘要:1082 AlvinZH的学霸养成记VI 思路 难题,凸包。 分析问题,平面上给出两类点,问能否用一条直线将二者分离。 首先应该联想到这是一个凸包问题,分别计算两类点的凸包,如果存在符合题意的直线,那么这两个凸包(凸多边形)一定是不相交的。 计算凸包一般有两种方法,Graham扫描法和Jarvis步 阅读全文
posted @ 2018-01-03 19:44 AlvinZH 阅读(650) 评论(0) 推荐(0)
摘要:Bamboo之吃我一拳 分析 当两个点的距离寻找最近点对距离,得到的最近距离能够使得可以出拳的组数最少,因为除了最近点对外其他组合均不符合条件。 在一堆点中找到两个点的距离最小,暴力的O(n^2)计算量很恐怖,可以用分治思想把问题变小: 把平面上的点分为两拨,距离最近的两个点只可能出现在:第一堆,第 阅读全文
posted @ 2018-01-03 19:43 AlvinZH 阅读(554) 评论(0) 推荐(0)
摘要:1081 AlvinZH的学霸养成记V 思路 中等题,计算几何。 这是一个排序问题,按极角排序。可以转化为叉积的应用,对于点A和B,通过叉积可以判断角度大小,共线时再判断距离。 叉积的应用。OA × OB = x1 y2 x2 y1。 OA × OB 0:OA在OB的顺时针180°内; OA × O 阅读全文
posted @ 2018-01-03 19:42 AlvinZH 阅读(287) 评论(0) 推荐(0)
摘要:1032 AlvinZH的学霸养成记II 思路 中等题,贪心。 所有课程按照DDL的大小来排序。 维护一个当前时间curTime,初始为0。 遍历课程,curTime加上此课程持续时间d,如果这时curTime大于此课程DDL,表示无法学习此课程,但是我们不减去此课程,而是减去用时最长的那门课程(优 阅读全文
posted @ 2018-01-03 19:41 AlvinZH 阅读(480) 评论(0) 推荐(0)
摘要:1114 ModricWang's FFT EASY VERSION 思路 利用FFT做大整数乘法,实际上是把大整数变成多项式,然后做多项式乘法。 例如,对于$1234$,改写成$f(x)=1 x^3+2 x^2+3 x+4$,那么$x=10$处的值就是原数。类似的,对于输入的两个大整数,转换为$f 阅读全文
posted @ 2018-01-03 19:40 AlvinZH 阅读(338) 评论(0) 推荐(0)
摘要:Bamboo之寻找小金刚 分析 可以抽象为许多连续线段,分别计数左拐和右拐的个数。考察叉积的基础应用。 假设ABC三点构成一个夹角∠ABC,B就是拐点,AC是辅助形成夹角。考虑线段AB和BC形成的向量 sin∠ABC= (AB BC)/|AB| |BC| 两个向量的叉乘除以它们的模 所以叉乘可以判断 阅读全文
posted @ 2018-01-03 19:38 AlvinZH 阅读(368) 评论(0) 推荐(0)
摘要:1086 AlvinZH的青春记忆IV 思路 难题,动态规划。 这是一道很有意思的题,因为它不仅卡了时间,也卡了空间,而且卡的很妙很迷。 光是理解题意已经有点难度,简化题意:两串数字序列,相等的数字定义为可以交战,若 Ai==Bj,则 Ai 可与 Bj 交战,之后下一场 Aii、Bjj 交战的条件是 阅读全文
posted @ 2017-12-28 20:58 AlvinZH 阅读(905) 评论(0) 推荐(0)
摘要:1083 AlvinZH的青春记忆III 思路 难题,二分图。 说这是一个考察二分图的题目,你可以会说“不可能”,这哪里像一个二分图了!这真的是一个二分图,考察的是最小顶点覆盖。 你不知道最小顶点覆盖没有关系,别百度,先慢慢分析,别先入为主。 简化题意。A、B两列数字,若B[i]%A[j]==0,则 阅读全文
posted @ 2017-12-28 20:57 AlvinZH 阅读(570) 评论(0) 推荐(0)
摘要:1111 AlvinZH的序列问题 思路 中等题,动态规划。 简化题意,。 坑点一:二维int数组MLE,明显会超过内存限制,由于$n$最大为1e4,那么我们的dp数组最大也是1e4,考虑使用short int。 坑点而:被题目开始的子序列描述误导,题目没有要求等差数列中数字顺序和输入顺序一致,所以 阅读全文
posted @ 2017-12-28 20:56 AlvinZH 阅读(683) 评论(0) 推荐(0)
摘要:1083 AlvinZH的青春记忆I 思路 中等题,动态规划。 简化题意,一个环上取数,数不可相邻,取取得数之和最大值。 环不好表示,可以解开变成一列数,那么答案应为下列两种情况较大者。 ①:取第一个点,可取得最大价值为宝物[1,n 1]的最大价值。 ②:不取第一个点,可取得最大价值为宝物[2,n] 阅读全文
posted @ 2017-12-28 20:54 AlvinZH 阅读(729) 评论(0) 推荐(0)