旅游电子商务网站的品牌建设,房产网签备案是什么意思,cos-html-cache – wordpress静态化插件,石家庄站全景图目录 2833. 距离原点最远的点2834. 找出美丽数组的最小和2835. 使子序列的和等于目标的最少操作次数TODO 2836. 在传球游戏中最大化函数值 这场比赛排名第 1 - 1000 名的参赛者 可获「NIO 蔚来」简历内推机会#xff0c;比有的场次前十才给容易多了。
2833. 距离原点最远的点… 目录 2833. 距离原点最远的点2834. 找出美丽数组的最小和2835. 使子序列的和等于目标的最少操作次数TODO 2836. 在传球游戏中最大化函数值 这场比赛排名第 1 - 1000 名的参赛者 可获「NIO 蔚来」简历内推机会比有的场次前十才给容易多了。
2833. 距离原点最远的点
距离原点最远的点 注意是移动n次后不是移动过程中。 可以分为最靠左的点和最靠右的点就是把_都换成L或R。 然后计算左右的差求绝对值。 O(n)
class Solution {
public:int furthestDistanceFromOrigin(string moves) {int LCnt 0;int RCnt 0;int allCnt 0;int ans 0;for(int i0;i(int)moves.length();i){if(moves[i]L){LCnt;}else if(moves[i]R){RCnt;}else{allCnt;}}ans max(ans, max(abs(LCntallCnt-RCnt),abs(RCntallCnt-LCnt)));return ans;}
};2834. 找出美丽数组的最小和
找出美丽数组的最小和 每一对和为目标值的两个数只能选一个显然应该选小的。 所以简单起见从1开始枚举检查和之前的值和不为目标值用哈希表记录。 O(n)
class Solution {
public:long long minimumPossibleSum(int n, int target) {unordered_setint st;long long ans 0;int now 1;for(int i1;in;i){while(st.count(target-now)){now;}st.insert(now);ansnow;now;}return ans;}
};2835. 使子序列的和等于目标的最少操作次数
使子序列的和等于目标的最少操作次数 以2为底取对数记录每种2的幂的个数。 对于target中的每个为1的二进制位要么用1个对应位nums中的数要么用多个低位的数加起来实在不行从高位借位记录成本。 最后检查最高位是否存在借不到的情况输出-1。 O(n)
class Solution {
public:int minOperations(vectorint nums, int target) {unordered_mapint,int mp;for(int i0;i30;i){mp[1i] i;}int a[50] {};for(const autov: nums){a[mp[v]];}int b[50] {};int ans 0;for(int i0;i30;i){if(target(1i)){b[i] b[i]a[i]-1;}else{b[i] b[i]a[i];}if(b[i]0){//cout! iendl;ans(-b[i]1)/2;b[i1]-(-b[i]1)/2;b[i] (-b[i])%2;}else if(b[i]0){b[i1] b[i]/2;b[i]%2;}//if(b[i])couti i b[i]endl;}if(b[31]0){return -1;}return ans;}
};TODO 2836. 在传球游戏中最大化函数值
在传球游戏中最大化函数值
想出最优的正解了但是没写完。 传球过程形成基环内向森林一个点的自环也算环。
对于环上的点答案是若干个整环求和加首尾零散的部分可以用前缀和求区间和。对于不在环上的点维护一个栈保存到环过程中的权值。维护一个值保存当前点到环至多含k个值的权值和。不足k时加上环上部分可能是一段或若干个整环加首尾零散的部分。
O(n)
class Solution {
public:long long getMaxFunctionValue(vectorint receiver, long long k) {}
};