
ACM
向往阳光的月光
这个作者很懒,什么都没留下…
展开
-
2020牛客暑期第三场 E-Two matchings
题意:找到两个序列p,q,这两个序列是1-n中每两个数之间交换所得的序列(每一个数都要被交换过),给出a1-an,求∑∣a[i]−a[k[i]]∣\sum |a[i]-a[k[i]]|∑∣a[i]−a[k[i]]∣ 的最小值,k分别是p和q序列中的一个(p和q序列都要算入求和)方法:通过画线段表示数字大小可以发现,将数组排序后,每四个数字可以两两交换,因此最佳情况是算上所有排序后的a[i] - a[i - 3]求和,但是假如n=10,则会出现剩下6个的情况,因此6个的情况也要算上(是6个在前好还是6个原创 2020-07-18 23:38:18 · 203 阅读 · 0 评论 -
CH3401 二维转一维矩阵+转移矩阵分析+矩阵快速幂
CH3401 二维转一维矩阵+转移矩阵分析+矩阵快速幂题面CH3401 题面思路由于t有可能很大很大,直接模拟是不现实的,这种操作用矩阵表示的问题,明显要用矩阵快速幂解决,但是有以下几个难点:如何用矩阵操作二维矩阵中的每一个数如何构造对应的转移矩阵如何寻找循环节解决本题随着这三个问题的解决就迎刃而解:一开始寻找如何操作二维矩阵中的每一个数,但是发现初等变换都是动一个数就至少...原创 2019-10-05 15:32:48 · 663 阅读 · 0 评论 -
POJ3666 线性dp+维度优化
以下内容部分摘自《算法竞赛进阶指南》(lyd),也有个人的理解原创 2019-10-05 11:31:07 · 205 阅读 · 0 评论 -
CH5101 动态规划+决策集合优化
CH5101 动态规划+决策集合优化题面CH5101题面思路性质内容状态表示dp[i,j]表示b中以j为结尾的子序列中与a中以i结尾的子序列可以构成的公共最长上升子序列的最大长度阶段划分用(i,j)二元组表示以b中j为结尾的子序列在a中以i为结尾找子序列转移方程dp[i,j]={dp[i−1,j](a[i]≠b[i])max0≤k<j,b[k]...原创 2019-09-21 08:28:09 · 404 阅读 · 0 评论 -
POJ2279 五维线性dp
POJ2279 五维线性dp(动态规划入门)题面POJ2279题面思路从头开始系统的学dp,做题目一定要理清dp的五大因素状态表示用dp[a1,a2,a3,a4,a5a_1,a_2,a_3,a_4,a_5a1,a2,a3,a4,a5]表示第i行上已经插入了aia_iai个人的排队方法数阶段划分已经在各排分配了制定人数的方法数(对应一个五元组)转移方...原创 2019-09-20 20:48:20 · 467 阅读 · 2 评论 -
POJ2891 中国剩余定理推论+归纳思想
POJ2891 中国剩余定理推论or归纳思想题面POJ2891题面思路法一:中国剩余定理推论中国剩余定理中,由于remindar m1,m2,⋯ ,mnm_1,m_2,\cdots,m_nm1,m2,⋯,mn是互质的,所以直接取的是m=m1∗m2∗⋯∗mnm = m_1*m_2* \cdots *m_nm=m1∗m2∗⋯∗mn,对于本题中的同余方程组{x≡a1(mod&nb...原创 2019-09-19 14:34:48 · 397 阅读 · 0 评论 -
CH3301 exgcd
CH3301 exgcd题面CH3301题面思路很清楚了就是ax≡1(mod b)ax\equiv 1(mod\space b)ax≡1(mod b),对应的Eucild方程就是(ax+by=1)(ax+by=1)(ax+by=1),找到x的集合就行了,由于整除1的数只有1,那么只能gcd(a,b)=1gcd(a,b) = 1gcd(a,b)=1,用exgcd求出一个解...原创 2019-09-18 16:58:38 · 158 阅读 · 0 评论 -
POJ1845 乘法逆元+long long快速幂+质数分解
POJ1845 乘法逆元+快速幂+质数分解题面POJ1845题面思路显然要对A分解质因数,可得ABA^BAB的所有约数之和(求模)为:Sum=(1+p1+p12+…+p1B∗c1)∗(1+p2+p22+…+p2B∗c2)∗⋯∗(1+pn+pn2+…+pnB∗cn) mod 9901(1) Sum = (1+p_1+p_1^2+\ldots+p_1^{B*c_1})*...原创 2019-09-17 23:43:51 · 262 阅读 · 0 评论 -
BZOJ1053 反质数 思考+dfs
BZOJ1053 反质数 思考+dfs题面BZOJ1053题面思路都说这个题是定理题,但个人认为这题所谓的定理和引理通过思考很容易得出来,只不过因为需要证明地很严谨,所以被称之为定理,实际思考是可以得到的,下面是思路:只要你想到通过质因数分解的方式看这里的约数问题,很容易得到一下结论:1)如果两个数的约数个数相同,肯定要取质因子最小的那一批(即让数最小),因为对于稍微大一点数(相同约数...原创 2019-09-17 09:58:18 · 246 阅读 · 0 评论 -
CH3101 质数分解的灵活处理
CH3101 质数分解的灵活处理CH3101 题面数据(这里为了方便循环输入)input:91009753999911000000output:2 73 45 17 12 973 485 247 1611 913 717 519 523 429 331 337 241 243 247 253 159 161 167 171 173...原创 2019-09-16 21:10:03 · 282 阅读 · 0 评论 -
2019ACM-ICPC网络赛 沈阳 F题 二分的灵活运用
2019沈阳站ICPC网络赛 F题 二分的灵活运用2019沈阳ICPC网络赛 F题题面题意有n个池塘,第i个池塘里初始状态有a[i]个单位的水,每天都进行一次操作:把水最多的池塘里(如果有多个随机取一个)的一个单位的水搬到水最少的池塘里(如果有多个随机取一个),问k次之后的水最多的池塘的水量减去水最少的池塘的水量是多少个单位?限制:1000ms 262144K思路通常情况下二分的对象要...原创 2019-09-15 11:38:24 · 534 阅读 · 0 评论 -
POJ2689 Eratothenes质数筛
POJ2689 Eratothenes质数筛Waterloo October 1998https://vjudge.net/problem/POJ-2689通过某种方式到waterloo的官网(http://acm.student.cs.uwaterloo.ca/~acm00/98oct17/solutions/)上找到了测试数据://data.in1 1001000000000 10...原创 2019-09-14 09:17:01 · 396 阅读 · 0 评论 -
HDU1010 DFS+剪枝
原 Tempter of the Bone(详解) The doggie f...转载 2019-04-25 09:33:31 · 206 阅读 · 0 评论 -
PTA L1-025正整数A+B
PTA L1-025正整数A+B 对于第3个点,我们要如何处理呢?我们首先要选择好的方法,此题一般解法是定义两个字符串来处理,如果是这样,那么处理第3个难点会变得困难而且复杂,所以好的方法很重要。与其判定两个串,倒不如一次性判定一个串,而且题目已经给出两个串的界线——第一个碰到的空格,既然如此,何不利用一发?C++语言提供了可以接受字符串的语句getline,用它接受一个串,寻找第一个碰到的空格,...转载 2019-03-18 19:53:54 · 602 阅读 · 1 评论