随笔分类 - 数学
摘要:题意:找出序列中有多少子序列是$wow$,但是$w$只能用$vv$来表示. 题解:我们分别记录连续的$v$和$o$的个数,用$v1$和$v2$存,这里要注意前导$o$不能要,观察一下写出答案公式:\(ans=v1[i]*(v2[i]*(v1[i+1]+...+v1[k])+v2[i+1]*(v1[i
阅读全文
摘要:题意:RT 题解:先对$p$排个序,然后设$dp[i]$表示前$i-1$个$p[i]$满足条件但是$p[i]\(不满足,即在\)[1,p[i]]$中不存在从$p[1]$到$p[i-1]$[的排列,比如说$p[1]=1$,\(p[2]=2\),\(p[3]=3\),则$dp[4]\(中一定不能存在\)
阅读全文
摘要:题意:给你$n$个区间,从这$n$区间中选$k$个区间出来,要求这$k$个区间都要相交.问共有多少种情况. 题解:如果$k$个区间都要相交,最左边的区间和最右边的区间必须要相交,即$min(r[1],...,r[k])>=max(l[1],...,l[k])$.我们先按左边界对所有区间进行排序,然后
阅读全文
摘要:题意:刚开始你有一个木棍,造一个火炬需要一个木根和一个煤块,现在你可以用一个木棍换取$x$个木棍,或者$y$根木棍换一个煤块,消耗一次操作,问最少需要操作多少次才能造出$k$把火炬. 题解:初始你有一个木棍,造出$k$把火炬需要$k$个木棍和$k$个煤块,而一个煤块需要$y$个木棍,所以需要木棍$k
阅读全文
摘要:题意:给你两个数字$x$和$y$,让你构造一个长度为$n$的序列,要求包含$x$和$y$,并且排序后相邻两项的差值相等. 题解:有排序后相邻两项的差值相等可知,构造的序列排序后一定是一个等差数列,而题目给的$x$和$y$的范围很小,所以我们可以从$[1,50]$来枚举公差$d$,这个$d$必须要能整
阅读全文
摘要:题意:给你$a$和$b$两个数,每次操作可以是任意一个数$-1$,最多操作$n$,并且$a\ge x$,\(b\ge y\),求操作后$a*b$的最小值. 题解:观察样例并且在纸上推一推发现,我们要让$a$和$b$中,小的那个尽可能的小,然后模拟一下就好了. 代码: int t; ll a,b,x,
阅读全文
摘要:题意:你和你的随从去偷剑和战斧,你可以最多可以拿$p$重的东西,随从可以拿$f$重的东西,总共有$cnt_$把剑,$cnt_$把战斧,每把剑重$s$,战斧重$w$,问你和随从最多能拿的剑和战斧的总和是多少? 题解:首先,肯定谁轻就先拿谁,我们就令剑是轻的,然后算一下我自己最多能拿多少剑,从$0$开始
阅读全文
摘要:题意:给你$n$个数,首先判断它们是否全都__两两互质__.然后再判断它们是否全都互质. 题解:判断所有数互质很简单,直接枚举跑个gcd就行,关键是第一个条件我们要怎么去判断,其实我们可以对所有数进行质因数分解,然后判断它们有无共同的质因子,如果有,那么就说明一定至少有一对数它们不是互质的,这样的话
阅读全文
摘要:题意:对于某个序列,若$1\le i\le n$,$1\le j\le i$且$p_j>p_i$,或者$1\le i\le n$,$i<j \le n$且$p_j>p_i$,那么就可以在$i$和$j$之间连一条边,求有多少能够成环的长度为$n$的序列. 题解:对于长度为$n$的序列,也就是有$n$个
阅读全文
摘要:题意:给你三个正整数$x$,\(y\),\(z\),问能够找到三个正整数$a$,\(b\),\(c\),使得$x=max(a,b)$,\(y=max(a,c)\),\(z=max(b,c)\). 题解:容易看出,$a,b,c$中最大的数一定会在$x,y,z$中出现两次,所以我们只要判断$x,y,z$
阅读全文
摘要:题意:给你一个正整数$n$,求两个正整数$a$和$b$,使得$a+b=n$,并且$LCM(a,b)$要尽可能的小. 题解:首先对于偶数,构造$\frac{2}\(和\)\frac{2}$一定是最优解,对于奇数,我们去找除它本身的最大因子$a$,为什么呢? 我们假设$a$是$n$的一个真因子,那么
阅读全文
摘要:题意:给你两个一元多项式$f(x)$和$g(x)$,保证它们每一项的系数互质,让$f(x)$和$g(x)$相乘得到$h(x)$,问$h(x)$是否有某一项系数不被$p$整除. 题解:这题刚开始看了好久不知道怎么写,但仔细看题目给的条件可能会看出一点门道来,我们知道,$c_$是由$f(x)$和$g(x
阅读全文
摘要:题意:有一个数$n$,每次操作可以使$n*=2$或$n/=6$(如果能被整除),求最少操作次数使得$n=1$,如果不满足,输出$-1$. 题解:我们只要看$n$的质因子即可,如果要满足条件,那么它的质因子只能含有$2$和$3$,并且$2$的次数不大于$3$的次数.直接去找$2$和$3$的次数即可.(
阅读全文
摘要:题意:有一长度为$n$的数组,求该数组中有多少元素不能整除其它任一元素的个数. 题解:刚开始写了个分解质因数(我是傻逼),后来发现直接暴力枚举因子即可,注意某个元素出现多次时肯定不满足情况,再特判数组中存在$1$的情况即可. 代码: #include <iostream> #include <cst
阅读全文
摘要:题意:有一长度为$n$的数组,求一子序列,要求子序列中两两差的绝对值最大,并且子序列尽可能短. 题解:将数组看成坐标轴上的点,其实就是求每个单调区间的端点,用差分数组来判断单调性. 代码: #include <iostream> #include <cstdio> #include <cstring
阅读全文
摘要:题意:有$n$组数,对于每组数,问是否能找到两个因子$d_{1},d{2}$,使得$gcd(d_{1}+d_{2},a_=1)\(,如果有,输出它们,否则输出\)-1$. 题解:对于这题,首先我们要推两个gcd的公式: 1) $gcd(a,b)=gcd(a+b,b) $. 2) 若$gcd(
阅读全文
摘要:题意:有长为$n$的排列,其中$x$位置上的数为$1$,其余位置全为$0$,询问$m$次,每次询问一个区间,在这个区间内可以交换任意两个位置上的数,问$1$最后出现在不同位置的次数. 题解:维护区间即可,如果某个区间包含了$1$,更新最大的答案区间,(每次更新后说明这整个区间都能取到$1$). 代码
阅读全文
摘要:题意:给你一个数组,求有多少子数组的中位数等于$m$.(若元素个数为偶数,取中间靠左的为中位数). 题解:由中位数的定义我们知道:若数组中$<m$的数有$x$个,$>m$的数有$y$个,只有$x=y$或$y-x$=1时,中位数才能取到$m$,记$m$在原数组的位置为$pos$. 于是,我们先遍历
阅读全文
摘要:题意:给你一组全是$2^d\ (d\ge0)\(的数,询问q次,每次询问一个数,问这个数是否能够由原数组中的数相加得到,如果能,输出最少用多少个数,否则输出\)-1$. 题解:首先贪心得出结论:如果情况成立,那么最少的情况一定是优先用数组中大的数,然后我们用桶记录数组数的个数,从$inf$开始枚举,
阅读全文
摘要:题意:商店里有$k$个包裹,第$i$个包裹中含有$i$个物品,现在想要买$n$物品,你可以选择某一个包裹购买任意次,使得物品数刚好等于$n$,求最少的购买次数. 题解:首先,假如$k\ge n$,那么只用买一次.否则,我们枚举$1$~\(\sqrt n\),若$n\ mod\ i=0$: 1.\
阅读全文

浙公网安备 33010602011771号