news 2026/4/16 14:12:46

链式投票|流向贪心

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
链式投票|流向贪心

lc

lc797

先凑总和非负,找唯一负数位置

从近到远取两边正数补负数,累计移动步数得最小操作数

class Solution {
public:
long long minMoves(vector<int>& balance) {
long long total = 0;
int neg_idx = -1;
for (int i = 0; i < balance.size(); i++) {
int x = balance[i];
total += x;
if (x < 0) {
neg_idx = i;
}
}

if (total < 0) { // 总和必须非负
return -1;
}
if (neg_idx < 0) { // 没有负数,无需操作
return 0;
}

int n = balance.size();
int need = -balance[neg_idx];
long long ans = 0;
for (int dis = 1; ; dis++) { // 把与 neg_idx 相距 dis 的数移到 neg_idx
int s = balance[(neg_idx - dis + n) % n] + balance[(neg_idx + dis) % n];
if (s >= need) {
ans += 1LL * need * dis; // need 个 1 移动 dis 次
return ans;
}
ans += 1LL * s * dis; // s 个 1 移动 dis 次
need -= s;
}
}
};

lc277

1.找候选人

2.check候选人(3种situation)

/* The knows API is defined for you.
bool knows(int a, int b); */

class Solution
{
public:
int findCelebrity(int n)
{
int candidate = 0; //候选人
for (int x = 1; x < n; x ++)
{
if ( knows(candidate, x) == true ) //若候选人认识别人,就不可能是名人。名人不认识其他人
{
candidate = x; //所有人,一定认识名人
//////小于x的那些,要么是因为 (1)被人不知,if被人知,就抢到了candidate了
//////(2) 要么是因为认识了别人,就放弃了candidate
}
}

for (int x = 0 ; x < n; x ++)
{
if (candidate == x) //名人不认识其他人,但是认识自己
continue;
if ( knows(candidate, x) == true)
return -1; //名人不应该认识 anyone
if (knows(x, candidate) == false)
return -1; //anyone 认识名人
}

return candidate;
}
};

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

5分钟快速解决Spring Boot依赖传输问题

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 在快马平台上快速生成一个Spring Boot项目模板&#xff0c;自动解决org.springframework.boot:spring-boot-starter-par依赖传输失败的问题。提供一键式解决方案&#xff0c;用户只…

作者头像 李华
网站建设 2026/4/16 10:54:44

5分钟快速验证:你的项目会遇到‘ld returned 1 exit status‘吗?

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个快速原型验证工具&#xff0c;用户只需上传/粘贴代码片段&#xff0c;就能&#xff1a;1)静态分析潜在的链接问题 2)模拟构建过程 3)生成风险评估报告。特别关注&#xff1…

作者头像 李华
网站建设 2026/4/16 10:56:38

用WebClient快速验证API接口原型

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 开发一个API快速测试工具原型&#xff0c;功能包括&#xff1a;1. 可视化界面输入API地址和参数 2. 选择请求方法(GET/POST等) 3. 实时显示响应结果 4. 保存常用API配置 5. 导出测试…

作者头像 李华
网站建设 2026/4/15 22:54:07

前端新手必学:ResizeObserver基础入门指南

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个交互式ResizeObserver学习沙盒&#xff0c;包含&#xff1a;1) 可拖拽调整大小的演示区域 2) 实时显示观察到的尺寸数据 3) 5个渐进式示例(从基本观察到防抖优化) 4) 常见错…

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

企业级应用:基于Docker和MinIO构建高可用文件存储系统

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 设计一个高可用的MinIO集群方案&#xff0c;使用Docker Swarm或Kubernetes部署。要求&#xff1a;1. 包含4个MinIO节点&#xff0c;实现数据冗余&#xff1b;2. 配置Nginx作为负载均…

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

腾讯开源HunyuanImage-3.0:800亿参数重构AIGC产业格局

腾讯开源HunyuanImage-3.0&#xff1a;800亿参数重构AIGC产业格局 【免费下载链接】HunyuanImage-3.0 项目地址: https://ai.gitcode.com/hf_mirrors/tencent/HunyuanImage-3.0 导语 2025年9月28日&#xff0c;腾讯正式发布并开源全球首个工业级原生多模态图像生成模型…

作者头像 李华