news 2026/7/7 20:45:27

计数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/7/7 17:28:08

小红书多号运营全攻略:1 个系统破解登录 + 引流双重焦虑

多账号运营的“痛点”&#xff0c;你中了几条&#xff1f;1、登录惊魂&#xff1a;多账号来回切换&#xff0c;易被判定“异常登录”&#xff0c;轻则功能受限&#xff0c;重则触发风控&#xff0c;养号成果毁于一旦。2、记忆崩塌&#xff1a;账号间切换频繁&#xff0c;客户需…

作者头像 李华
网站建设 2026/7/7 13:12:16

跨平台兼容技术深度解析:让Windows程序无缝运行在Linux/macOS

在现代多元化的操作系统生态中&#xff0c;如何在Linux或macOS上流畅运行Windows应用程序已成为众多技术用户的迫切需求。Wine作为一款革命性的跨平台兼容层&#xff0c;通过精密的API转换技术完美解决了这一痛点&#xff0c;让你无需安装Windows系统就能原生运行.exe程序&…

作者头像 李华
网站建设 2026/7/7 6:39:58

Live Charts:重新定义 .NET 数据可视化的现代解决方案

Live Charts&#xff1a;重新定义 .NET 数据可视化的现代解决方案 【免费下载链接】Live-Charts 项目地址: https://gitcode.com/gh_mirrors/liv/Live-Charts 你是否曾经在 .NET 项目中为数据可视化而苦恼&#xff1f;面对复杂的图表需求&#xff0c;是否觉得现有工具要…

作者头像 李华
网站建设 2026/7/7 4:07:33

跨越架构鸿沟:PaddleX在苹果M系列芯片上的深度适配指南

跨越架构鸿沟&#xff1a;PaddleX在苹果M系列芯片上的深度适配指南 【免费下载链接】PaddleX All-in-One Development Tool based on PaddlePaddle 项目地址: https://gitcode.com/paddlepaddle/PaddleX 在深度学习开发者的日常工作中&#xff0c;硬件兼容性问题常常成为…

作者头像 李华
网站建设 2026/7/6 22:19:41

如何快速集成跨平台字体:终极Web字体解决方案指南

如何快速集成跨平台字体&#xff1a;终极Web字体解决方案指南 【免费下载链接】PingFangSC PingFangSC字体包文件、苹果平方字体文件&#xff0c;包含ttf和woff2格式 项目地址: https://gitcode.com/gh_mirrors/pi/PingFangSC 还在为不同设备上字体显示效果不统一而烦恼…

作者头像 李华
网站建设 2026/7/7 8:33:41

uni-app插件市场完全指南:从入门到精通的跨端开发利器

跨端开发的现实困境与破局之道 【免费下载链接】uni-app A cross-platform framework using Vue.js 项目地址: https://gitcode.com/dcloud/uni-app 在当今多端并行的移动互联网时代&#xff0c;开发者们面临着前所未有的挑战。你是否曾经历过这样的场景&#xff1a;为微…

作者头像 李华