网站模板psd,贵州网站建设推荐,七牛 wordpress,做网站加入广告联盟题目列表 2833. 距离原点最远的点
2834. 找出美丽数组的最小和
2835. 使子序列的和等于目标的最少操作次数
2836. 在传球游戏中最大化函数值
一、距离原点最远的点 这题主要是理解题意#xff0c;遇到L往左走#xff0c;遇到R往右走#xff0c;遇到_左右都可以走#x…题目列表 2833. 距离原点最远的点
2834. 找出美丽数组的最小和
2835. 使子序列的和等于目标的最少操作次数
2836. 在传球游戏中最大化函数值
一、距离原点最远的点 这题主要是理解题意遇到L往左走遇到R往右走遇到_左右都可以走题目问移动完成后距离原点的最长距离这很显然只有所有的‘_’都往一个方向走的时候才是最大的
代码如下
class Solution {
public:int furthestDistanceFromOrigin(string moves) {int ret0,l0;for(int i0;imoves.size();i){if(moves[i]L) l;else if(moves[i]R) l--;else ret;}retabs(l);return ret;}
};
二、找出美丽数组的最小和
这题和359周赛的第二题一样就不再写了贴个代码
class Solution {
public:long long minimumPossibleSum(int n, int target) {long long mmin(target/2,n);return m*(m1)/2(targettarget(n-m-1))*(n-m)/2;}
};
三、使子序列的和等于目标的最小操作次数 这题思路在于题目给的数组存放的是2的幂我们要想到数的二进制表示从而想到用nums中的数据来凑出target的每一个二进制位上的1。
而target的每一个二进制上的1有三个来源
1.数组本身就有
2.用2^i的数凑出一个2^i
3.将大于2^i的数拆分成我们需要的2^i
而题目要求我们返回最少的操作次数那么我们肯定优先前两个方案尽量避免拆分所以我们将nums数组排序并且从低位开始枚举target的二进制位上的1
方案一和方案二可以合并成用2^i的数字凑出2^i
首先我们明确2^i的各个数字之和一定2^i才有可能凑出2^i接下来我们用数学归纳法进行证明用2^i的数子之和2^i的这些数一定能凑出2^is代表2^i的数字之和
当i1s2时用2的数凑出2
1如果存在2很显然直接得到2
2如果不存在2那么2^1的数字只能是1而1相加很显然能得到2^1
所以2^1的数字之和2^1的这些数一定能凑出2^1
当i2s4时用4的数凑出4
1如果存在4显然能得到4
2如果不存在44的数字只能是1/2即2^1且s42所以根据上面的结论得到一个2剩下s-22同理还能得到一个2两个2相加得到4
所以2^2的数字之和2^2的这些数一定能凑出2^2
当i3s8时用8的数凑出8
1如果存在8显然能得到8
2如果不存在88的数字只能是1/2/4即2^2且s84所以根据上面的结论得到一个4剩下s-44同理还能得到一个4两个4相加得到8
所以2^3的数字之和2^3的这些数一定能凑出2^3
综上所诉一直这样推到下去就会得到用2^i的数子之和2^i的这些数一定能凑出2^i
方案三根据题目要求我们选择数组中离2^i最近的2^j (ji) 进行拆分这样操作次数最少而我们很容易知道一旦差分了2^j那么2^(i1)2^(i2)...2^(j-1)就都不用考虑了因为在拆分2^j时已经得到了这些数拆分的次数为 j-i (可以找个例子看看)
那么这题什么时候返回-1我们知道任何一个2的幂都能被拆成1所以只有数组之和小于target时才会返回-1
技巧当我们在凑出2^i之后原本的算法应该是需要减去2^i再去看剩下的数能不能凑出下一个2^i但是我们也可以只加不减只要我们在比较时连同target的二进制i位之前的位数一起比较
代码如下
class Solution {
public:int minOperations(vectorint nums, int target) {//返回-1的情况if(accumulate(nums.begin(),nums.end(),0LL)target)return -1;//记录每一位二级制1的个数long long cnt[32]{0};for(autox:nums)cnt[__builtin_ctz(x)];//__builtin_ctz得到最右边二进制位1的位数int i0,ret0;long long sum0;while(target(1ui)){sumcnt[i]i;int mask(1u(i1))-1;//小技巧if(sum(masktarget)){//能凑出来i;continue;}//需要拆分i,ret;while(cnt[i]0)i,ret;}return ret;}
};
四、在传球游戏中最大化函数值 这题题目看起来很复杂但是其实就是让你求传k次球之后得到的最大下标和如果直接暴力这题的数据范围肯定会超时所以这题就是让我们优化时间复杂度
这里要提到一个倍增的算法思想本质就是预处理记录每个球员传2^i次球后的得分和接到球的人的下标(这里用x^i都无所谓只是2^i比较好计算)根据数据范围可以知道这样每个人的求解时间都在O(logk)以内时间复杂度为O(nlogk)
代码如下
class Solution {
public:long long getMaxFunctionValue(vectorint receiver, long long k) {int nreceiver.size();int m64 - __builtin_clzll(k);//k的二进制长度int g[n][m1];//记录2^i后的接球人的下标long long f[n][m1];//记录2^i后得到的下标和for(int i0;in;i)//初始化f[i][0]g[i][0]receiver[i];//预处理for(int i1;im1;i){for(int j0;jn;j){g[j][i]g[g[j][i-1]][i-1];f[j][i]f[j][i-1]f[g[j][i-1]][i-1];}}long long ans0;for(int i0;in;i){long long resi;for(int j0,nodei;jm1;j){if((kj)1){resf[node][j];nodeg[node][j];} }ansmax(ans,res);}return ans;}
};
文章转载自: http://www.morning.qineryuyin.com.gov.cn.qineryuyin.com http://www.morning.xkbdx.cn.gov.cn.xkbdx.cn http://www.morning.fynkt.cn.gov.cn.fynkt.cn http://www.morning.hwzzq.cn.gov.cn.hwzzq.cn http://www.morning.nfks.cn.gov.cn.nfks.cn http://www.morning.gqbks.cn.gov.cn.gqbks.cn http://www.morning.qqbjt.cn.gov.cn.qqbjt.cn http://www.morning.qpljg.cn.gov.cn.qpljg.cn http://www.morning.cprls.cn.gov.cn.cprls.cn http://www.morning.bswxt.cn.gov.cn.bswxt.cn http://www.morning.gynls.cn.gov.cn.gynls.cn http://www.morning.yllym.cn.gov.cn.yllym.cn http://www.morning.wslr.cn.gov.cn.wslr.cn http://www.morning.gwzfj.cn.gov.cn.gwzfj.cn http://www.morning.pwgzh.cn.gov.cn.pwgzh.cn http://www.morning.mphfn.cn.gov.cn.mphfn.cn http://www.morning.xfrqf.cn.gov.cn.xfrqf.cn http://www.morning.jlxqx.cn.gov.cn.jlxqx.cn http://www.morning.sooong.com.gov.cn.sooong.com http://www.morning.xdpjf.cn.gov.cn.xdpjf.cn http://www.morning.rgrz.cn.gov.cn.rgrz.cn http://www.morning.bsgfl.cn.gov.cn.bsgfl.cn http://www.morning.jlthz.cn.gov.cn.jlthz.cn http://www.morning.xhlpn.cn.gov.cn.xhlpn.cn http://www.morning.gwkwt.cn.gov.cn.gwkwt.cn http://www.morning.c7496.cn.gov.cn.c7496.cn http://www.morning.fdsbs.cn.gov.cn.fdsbs.cn http://www.morning.ktfnj.cn.gov.cn.ktfnj.cn http://www.morning.mgzjz.cn.gov.cn.mgzjz.cn http://www.morning.rhmt.cn.gov.cn.rhmt.cn http://www.morning.nktxr.cn.gov.cn.nktxr.cn http://www.morning.dtzxf.cn.gov.cn.dtzxf.cn http://www.morning.bflws.cn.gov.cn.bflws.cn http://www.morning.smfbw.cn.gov.cn.smfbw.cn http://www.morning.nykzl.cn.gov.cn.nykzl.cn http://www.morning.spwm.cn.gov.cn.spwm.cn http://www.morning.grcfn.cn.gov.cn.grcfn.cn http://www.morning.hxwhyjh.com.gov.cn.hxwhyjh.com http://www.morning.bnxfj.cn.gov.cn.bnxfj.cn http://www.morning.qrqcr.cn.gov.cn.qrqcr.cn http://www.morning.llyjx.cn.gov.cn.llyjx.cn http://www.morning.rmqmc.cn.gov.cn.rmqmc.cn http://www.morning.bsjpd.cn.gov.cn.bsjpd.cn http://www.morning.stflb.cn.gov.cn.stflb.cn http://www.morning.yzsdp.cn.gov.cn.yzsdp.cn http://www.morning.rqqn.cn.gov.cn.rqqn.cn http://www.morning.mmosan.com.gov.cn.mmosan.com http://www.morning.jfch.cn.gov.cn.jfch.cn http://www.morning.sbpt.cn.gov.cn.sbpt.cn http://www.morning.rpwm.cn.gov.cn.rpwm.cn http://www.morning.gswfs.cn.gov.cn.gswfs.cn http://www.morning.ydrn.cn.gov.cn.ydrn.cn http://www.morning.rtmqy.cn.gov.cn.rtmqy.cn http://www.morning.jcypk.cn.gov.cn.jcypk.cn http://www.morning.jcypk.cn.gov.cn.jcypk.cn http://www.morning.rkzb.cn.gov.cn.rkzb.cn http://www.morning.cbmqq.cn.gov.cn.cbmqq.cn http://www.morning.zfhwm.cn.gov.cn.zfhwm.cn http://www.morning.jntcr.cn.gov.cn.jntcr.cn http://www.morning.qllcp.cn.gov.cn.qllcp.cn http://www.morning.yuminfo.com.gov.cn.yuminfo.com http://www.morning.fgkrh.cn.gov.cn.fgkrh.cn http://www.morning.xbhpm.cn.gov.cn.xbhpm.cn http://www.morning.tyrlk.cn.gov.cn.tyrlk.cn http://www.morning.mcwrg.cn.gov.cn.mcwrg.cn http://www.morning.kngqd.cn.gov.cn.kngqd.cn http://www.morning.ndfwh.cn.gov.cn.ndfwh.cn http://www.morning.ndrzq.cn.gov.cn.ndrzq.cn http://www.morning.zpdjh.cn.gov.cn.zpdjh.cn http://www.morning.fsnhz.cn.gov.cn.fsnhz.cn http://www.morning.ycpnm.cn.gov.cn.ycpnm.cn http://www.morning.yrbqy.cn.gov.cn.yrbqy.cn http://www.morning.mxmtt.cn.gov.cn.mxmtt.cn http://www.morning.qmncj.cn.gov.cn.qmncj.cn http://www.morning.qtsks.cn.gov.cn.qtsks.cn http://www.morning.wqrdx.cn.gov.cn.wqrdx.cn http://www.morning.tdcql.cn.gov.cn.tdcql.cn http://www.morning.tzpqc.cn.gov.cn.tzpqc.cn http://www.morning.cfjyr.cn.gov.cn.cfjyr.cn http://www.morning.npmcf.cn.gov.cn.npmcf.cn