news 2026/7/23 0:00:22

leetcode 842. Split Array into Fibonacci Sequence 将数组拆分成斐波那契序列

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
leetcode 842. Split Array into Fibonacci Sequence 将数组拆分成斐波那契序列

Problem: 842. Split Array into Fibonacci Sequence 将数组拆分成斐波那契序列

解题过程

回溯,每次保存前一个、前前一个数字,判断分割的数字是否符合条件,已经数字是否是0,或是不满足条件的多个数字前置0,以及每个数字< INT_MAX,数字<sum扩大,数字>sum返回,数字==sum再递归,满足条件才递归调用,最后判断是否空以及列表长度>=3

Code

class Solution { public: vector<int> tr; bool flag = false; void dfs(string num, long long prepre, long long pre) { if(flag == true) return; if(num.size() == 0 && tr.size() >= 3) { flag = true; return; } string next, now; long long no, sum = prepre + pre; for(int i = 1; i <= num.size(); i++) { now = num.substr(0, i); if(now.size() > 1 && now[0]=='0') continue; no = stoll(now); if(no > INT_MAX) return; if(prepre >= 0) { if(sum > no) { continue; } else if(sum == no) { next = num.substr(i); tr.push_back(no); dfs(next, pre, no); if(flag == true) return; tr.pop_back(); } else { return; } } else { next = num.substr(i); tr.push_back(no); dfs(next, pre, no); if(flag == true) return; tr.pop_back(); } } } vector<int> splitIntoFibonacci(string num) { dfs(num, -1, -1); return tr; } };
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/17 13:13:23

提高AI系统可靠性和鲁棒性的新方法

提高AI系统可靠性和鲁棒性的新方法 关键词:AI系统、可靠性、鲁棒性、新方法、对抗训练、模型融合 摘要:本文聚焦于提高AI系统可靠性和鲁棒性的新方法。首先介绍了相关背景知识,包括研究目的、预期读者、文档结构和术语表。接着阐述了核心概念及其联系,给出了原理和架构的文…

作者头像 李华
网站建设 2026/7/22 14:42:21

[精品]基于微信小程序的 巴马旅居养老小程序UniApp

文章目录 项目介绍项目实现效果图所需技术栈文件解析微信开发者工具HBuilderXuniappmysql数据库与主流编程语言登录的业务流程的顺序是&#xff1a;毕设制作流程系统性能核心代码系统测试详细视频演示源码获取 项目介绍 在当今社会&#xff0c;随着人们生活水平的提高和老龄化…

作者头像 李华
网站建设 2026/7/18 16:30:37

Python+Vue的基于大数据技术的电影推荐系统的设计与实现 Pycharm django flask

这里写目录标题项目介绍项目展示详细视频演示感兴趣的可以先收藏起来&#xff0c;还有大家在毕设选题&#xff08;免费咨询指导选题&#xff09;&#xff0c;项目以及论文编写等相关问题都可以给我留言咨询&#xff0c;希望帮助更多的人技术栈文章下方名片联系我即可~解决的思路…

作者头像 李华