news 2026/6/10 7:41:08

leetcode 888. Fair Candy Swap 公平的糖果交换

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
leetcode 888. Fair Candy Swap 公平的糖果交换

Problem: 888. Fair Candy Swap 公平的糖果交换

排序,然后根据大小,依次查找,可以提前退出循环

更优秀的答案只需要一次遍历即可,

Code

class Solution { public: vector<int> fairCandySwap(vector<int>& aliceSizes, vector<int>& bobSizes) { sort(aliceSizes.begin(), aliceSizes.end()); sort(bobSizes.begin(), bobSizes.end()); int sa = 0, sb = 0, a, b; for(int& i : aliceSizes) sa += i; for(int& i : bobSizes) sb += i; if(sa < sb) { for(int i = 0; i < aliceSizes.size(); i++) { a = aliceSizes[i]; for(int j = bobSizes.size()-1; j >=0 ; j--) { b = bobSizes[j]; if(a >= b) break; if(sa - a + b == sb - b + a) { return {a, b}; } } } } else { for(int j = 0; j < bobSizes.size(); j++) { b = bobSizes[j]; for(int i = aliceSizes.size()-1; i >=0 ; i--) { a = aliceSizes[i]; if(a <= b) break; if(sa - a + b == sb - b + a) { return {a, b}; } } } } return {}; } };

其他人更优秀的答案

class Solution { public: vector<int> fairCandySwap(vector<int>& aliceSizes, vector<int>& bobSizes) { int suma = 0, sumb = 0, lena = aliceSizes.size(), lenb = bobSizes.size(); for(int i = 0; i < lena; i++) { suma += aliceSizes[i]; } for(int j = 0; j < lenb; j++) { sumb += bobSizes[j]; } int num = (suma - sumb) / 2; sort(aliceSizes.begin(), aliceSizes.end()); sort(bobSizes.begin(), bobSizes.end()); vector<int> ans(2); for(int i = 0, j = 0; i < lena, j < lenb; i += 0, j += 0) { int n = aliceSizes[i] - bobSizes[j]; if(n == num) { ans[0] = aliceSizes[i]; ans[1] = bobSizes[j]; break; } else if(n > num) { j++; } else if(n < num) { i++; } } return ans; } };
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/5 23:14:20

救命神器9个降AIGC工具 千笔帮你快速降AI率

AI降重工具&#xff1a;让论文更自然&#xff0c;更安心 在当前学术写作中&#xff0c;越来越多的高校开始采用AIGC检测系统来评估论文的原创性。对于本科生而言&#xff0c;一篇由AI生成的论文&#xff0c;虽然内容完整、逻辑清晰&#xff0c;但往往因“AI痕迹”过重而被判定…

作者头像 李华
网站建设 2026/5/27 8:00:49

【小程序毕设全套源码+文档】基于微信小程序的同城钓鱼社交APP设计与实现(丰富项目+远程调试+讲解+定制)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/5/29 10:51:48

掌握XSS手动测试:软件测试从业者必备技能

XSS手动测试的必要性与挑战‌ 跨站脚本攻击&#xff08;XSS&#xff09;是Web应用安全的头号威胁之一&#xff0c;能在用户浏览器中执行恶意脚本&#xff0c;导致数据泄露或会话劫持。对于软件测试从业者&#xff0c;手动测试是识别XSS漏洞的关键手段&#xff0c;尤其在自动化…

作者头像 李华
网站建设 2026/6/3 1:43:38

5.19 Grafana Dashboard开发:自定义监控面板与变量使用技巧

5.19 Grafana Dashboard开发:自定义监控面板与变量使用技巧 引言 自定义Dashboard是Grafana的核心功能。通过变量和模板,可以创建灵活、可复用的监控面板。本文将详细介绍Dashboard开发的方法和技巧。 一、Dashboard变量 1.1 变量类型 Query:查询变量 Custom:自定义变量…

作者头像 李华
网站建设 2026/5/23 11:58:10

5.21 Kubernetes应用监控实战:ServiceMonitor和PodMonitor配置详解

5.21 Kubernetes应用监控实战:ServiceMonitor和PodMonitor配置详解 引言 ServiceMonitor和PodMonitor是Prometheus Operator提供的CRD,用于自动发现和监控Kubernetes中的应用。本文将详细介绍这两个资源的配置方法。 一、Prometheus Operator 1.1 Operator作用 管理Prome…

作者头像 李华