news 2026/4/17 18:30:35

计数if|

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
计数if|

lc2593

1.mask ll也会溢出 转vec bool

2.sort pii(nums,idx) 后标记自身 &左右

一次遍历即可

class Solution {
typedef long long ll;
public:
long long findScore(vector<int>& nums) {
ll ret = 0;
int n = nums.size();
if (n == 1) return nums[0];

vector<bool> mask(n, false);

// 1. 元素按“值+下标”排序
vector<pair<int, int>> arr;
for (int i = 0; i < n; ++i)
arr.emplace_back(nums[i], i);
sort(arr.begin(), arr.end());

// 2. 按排序处理,用mask标记
for (auto& [val, idx] : arr)

{
if (!mask[idx]) { // 当前元素未标记
ret += val;
mask[idx] = true; // 标记自身
if (idx > 0) mask[idx - 1] = true; // 标记左邻
if (idx < n - 1) mask[idx + 1] = true; // 标记右邻
}
}
return ret;
}
};

lc2155

presum预处理

class Solution {
public:
vector<int> maxScoreIndices(vector<int>& nums)
{
int n = nums.size();
vector<int> pre(n + 1);
for (int i = 1; i <= n; ++i)
pre[i] = pre[i-1] + nums[i-1];

int max_s = 0;
vector<int> res;

for (int i = 0; i <= n; ++i) {
int l0 = i - pre[i];
int r1 = pre[n] - pre[i];
int s = l0 + r1;

if (s > max_s) {
max_s = s;
res = {i};
}
else if (s == max_s)
res.push_back(i);
}
return res;
}
};

lc2216

模拟栈

维护一个有效序列,遇到“偶数长度序列末尾元素和当前元素相同”的情况就替换末尾元素,最后保证序列是偶数长度

原数组长度减去有效长度得到最少删除次数

class Solution {
public:
int minDeletion(vector<int>& nums) {
vector<int> ans;
for (int num : nums) {
if (ans.size() > 0 &&num == ans.back() && ans.size() % 2 == 1)
continue;//ignore
else
ans.push_back(num);
}
int len = ans.size() % 2 == 0 ? ans.size() : ans.size() - 1;
return nums.size() - len;
}
};

lc2038

统计连续相同颜色的长度

class Solution {
public:
bool winnerOfGame(string colors)
{
int n = colors.size();
if (n < 3) return false;

int alice = 0, bob = 0;
int count = 1;
// 记录当前连续相同字符的长度

for (int i = 1; i < n; ++i) {
if (colors[i] == colors[i-1])
count++;//相等_计数
else
{ // 不等_统计上一段连续字符的可op
if (colors[i-1] == 'A')
alice += max(0, count - 2);
else
bob += max(0, count - 2);
count = 1;//重置
}
}
// 处理最后一段连续字符
if (colors.back() == 'A')

alice += max(0, count - 2);
else
bob += max(0, count - 2);

return alice > bob;
}
};

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/11 12:32:20

不用盯电脑!小红书多号定时发布 + 数据聚合攻略

“A号笔记刚编完&#xff0c;切B号时退错账号&#xff1b;盯C号数据入神&#xff0c;漏了D号私信&#xff1b;凌晨爬起来掐高峰发笔记&#xff0c;结果还发错号……” 这是小红书多号运营者的日常&#xff1a;多号布局本想放大收益&#xff0c;却一半精力耗在切号、查数据、盯…

作者头像 李华
网站建设 2026/4/17 5:36:28

PyMC终极指南:贝叶斯建模从入门到实战

PyMC终极指南&#xff1a;贝叶斯建模从入门到实战 【免费下载链接】pymc Python 中的贝叶斯建模和概率编程。 项目地址: https://gitcode.com/GitHub_Trending/py/pymc 还在为传统统计方法无法量化不确定性而困扰吗&#xff1f;想要通过概率编程轻松构建贝叶斯模型吗&am…

作者头像 李华
网站建设 2026/4/15 15:04:39

你的接口很好,但在使用者眼里,它可能只是个打不开的黑盒

有过"考古式开发"的经历吗&#xff1f;你接手了一个离职同事留下的老项目&#xff0c;或者在一个庞大的微服务群里找到了一个看似完美契合需求的内部接口。你满怀期待地点击文档链接&#xff0c;结果页面上只有冷冷清清的一行字&#xff1a;TODO: 待补充。你只能咬着…

作者头像 李华
网站建设 2026/4/17 0:37:47

BUYCOIN:当社区开始争夺交易时代的主导权

在加密行业里&#xff0c;有些创新依靠功能升级&#xff0c;有些依靠技术突破&#xff0c;而极少数会直接改变行业的权力结构。前两类会变成产品&#xff0c;后一类会变成时代。BUYCOIN 属于第三类。 它没有靠外部热点拉起声量&#xff0c;也不是从叙事中诞生的产物&#xff0c…

作者头像 李华
网站建设 2026/4/15 7:53:29

商场日常清洁应该配备怎样的洗地车以提升清洁效率和质量

商场日常清洁新趋势&#xff0c;洗地车的选择至关重要在商场的日常清洁中&#xff0c;适合的洗地车选择直接影响清洁效率与质量。现代商场面临的人流量大、地面面积广的问题&#xff0c;使得选用高效的清洁设备显得尤为重要。如今&#xff0c;“商场洗地车”不仅要求具备基本的…

作者头像 李华
网站建设 2026/4/16 15:01:53

直接甩干货!今天咱们唠唠用Matlab整数字滤波器的骚操作。不用示波器不用连线,导入数据直接开搞,还能实时看频谱变化,实测效果稳得一批

数字滤波器程序&#xff0c;基于matlab&#xff0c;低通滤波器&#xff0c;高通滤波器&#xff0c;带通滤波器。 并且可进行FFT频谱分析&#xff0c;分析波形中所含谐波分量&#xff0c;并可以对特定频率波形进行提取。 不需要通过示波器观察&#xff0c;直接导入数据即可&…

作者头像 李华