专栏电商日志财经减肥爱情
投稿投诉
爱情常识
搭配分娩
减肥两性
孕期塑形
财经教案
论文美文
日志体育
养生学堂
电商科学
头戴业界
专栏星座
用品音乐

202316给定一个由0和1组成的数组arr,将数组分成3个

  20230316:给定一个由0和1组成的数组arr,将数组分成3个非空的部分,
  使得所有这些部分表示相同的二进制值。
  如果可以做到,请返回任何〔i,j〕,其中i1j,这样一来,
  arr〔0〕,arr〔1〕,。。。,arr〔i〕为第一部分,
  arr〔i1〕,arr〔i2〕,。。。,arr〔j1〕为第二部分,
  arr〔j〕,arr〔j1〕,。。。,arr〔arr。length1〕为第三部分,
  这三个部分所表示的二进制值相等,
  如果无法做到,就返回〔1,1〕。
  注意,在考虑每个部分所表示的二进制时,应当将其看作一个整体,
  例如,〔1,1,0〕表示十进制中的6,而不会是3。此外,前导零也是被允许的,
  所以〔0,1,1〕和〔1,1〕表示相同的值。
  输入:arr〔1,0,1,0,1〕,
  输出:〔0,3〕。
  输入:arr〔1,1,0,0,1〕,
  输出:〔0,2〕。
  答案20230316:
  给定一个由0和1组成的数组arr,需要将其分成三个非空部分,使得每个部分中1的数量相等。如果无法做到,则返回〔1,1〕。
  输入:由0和1组成的数组arr,长度为n(1n3104),且只包含数字0和1。
  输出:长度为2的数组,表示能够将arr分成三个部分第一个和第二个部分的结束位置(下标从0开始)。如果无法做到则返回〔1,1〕。
  解法思路:
  首先统计整个数组中1的数量ones,如果ones不能被3整除,则说明无法分成三个相等的部分,直接返回〔1,1〕。
  如果ones等于0,则整个数组都是0,可以返回〔0,n1〕。
  接着需要找到第一个、第二个和第三个部分的起始位置。根据题意,第一个部分和第二个部分的1的数量应该是ones3,因此可以先计算出目标值partones3,然后从左到右遍历整个数组,在找到第一个和第二个部分之后,继续遍历找到第三个部分的起始位置。
  接下来检查第三个部分是否也等于目标值part。如果是,则返回〔end1,end2〕,否则返回〔1,1〕。
  rust代码实现:fnmain(){letarr1vec!〔0,0,0,0,0〕;println!({:?},threeequalparts(arr1));〔0,4〕letarr2vec!〔1,0,1,0,1,0〕;println!({:?},threeequalparts(arr2));〔1,4〕letarr3vec!〔1,0,1,0,1〕;println!({:?},threeequalparts(arr3));〔0,3〕letarr4vec!〔1,0,1,1,1〕;println!({:?},threeequalparts(arr4));〔1,1〕letarr5vec!〔0,1,0,1,0,1,0,1,0,1〕;println!({:?},threeequalparts(arr5));〔1,1〕letarr6vec!〔1,1,0,1,1,0,1,1〕;println!({:?},threeequalparts(arr6));〔1,5〕}pubfnthreeequalparts(arr:Veci32)Veci32{letonesarr。iter()。filter(numnum1)。count();统计数组中1的个数ifones3!0{如果无法分成三个相等的部分,则返回〔1,1〕returnvec!〔1,1〕;}letnarr。len();ifones0{如果整个数组都是0,则返回〔0,n1〕returnvec!〔0,nasi321〕;}letpartones3;计算每个子数组中1的数量letmutstart11;第一个子数组的起始位置letmutstart21;第二个子数组的起始位置letmutstart31;第三个子数组的起始位置letmutcnt0;当前已经遇到的1的数量foriin0。。n{ifarr〔i〕1{cnt1;ifstart11cnt1{start1iasi32;找到第一个子数组的起始位置}ifstart21cntpart1{start2iasi32;找到第二个子数组的起始位置}ifstart31cnt2part1{start3iasi32;找到第三个子数组的起始位置}}}whilestart3nasi32{ifarr〔start1asusize〕!arr〔start2asusize〕arr〔start1asusize〕!arr〔start3asusize〕{returnvec!〔1,1〕;如果找到的三个子数组不相等,则返回〔1,1〕}start11;start21;start31;}vec!〔start11,start2〕返回第一个和第二个子数组的结束位置}
  算法分析:
  该算法的时间复杂度为O(n),其中n是输入数组的长度,因为需要遍历整个数组一次。空间复杂度为O(1),只需要常量级别的额外空间存储一些变量。该算法的优点是简单易懂,缺点是可能会超时,比如当输入数组中有很多连续的1时。可以通过进一步优化算法来提高效率。
  测试结果:
  1。测试用例:〔0,0,0,0,0〕,预期输出:〔0,4〕。
  rust
  asserteq!(threeequalparts(vec!〔0,0,0,0,0〕),vec!〔0,4〕);
  2。测试用例:〔1,0,1,0,1,0〕,预期输出:〔1,4〕。
  rust
  asserteq!(threeequalparts(vec!〔1,0,1,0,1,0〕),vec!〔1,4〕);
  3。测试用例:〔1,0,1,0,1〕,预期输出:〔0,3〕。
  rust
  asserteq!(threeequalparts(vec!〔1,0,1,0,1〕),vec!〔0,3〕);
  4。测试用例:〔1,0,1,1,1〕,预期输出:〔1,1〕。
  rust
  asserteq!(threeequalparts(vec!〔1,0,1,1,1〕),vec!〔1,1〕);
  5。测试用例:〔0,1,0,1,0,1,0,1,0,1〕,预期输出:〔1,1〕。
  rust
  asserteq!(threeequalparts(vec!〔0,1,0,1,0,1,0,1,0,1〕),vec!〔1,1〕);
  6。测试用例:〔1,1,0,1,1,0,1,1〕,预期输出:〔1,5〕。
  rust
  asserteq!(threeequalparts(vec!〔1,1,0,1,1,0,1,1〕),vec!〔1,5〕);
  总结和展望:
  本文介绍了一种简单的算法,可以解决给定一个由0和1组成的数组arr,需将其分成三个非空部分,使得每个部分中1的数量相等的问题。该算法的核心思路是计算目标值targetval,并在遍历整个数组两次的过程中找到第一个和第二个部分的结束位置i和j。该算法的时间复杂度为O(n),空间复杂度为O(1)。
  有一些情况下该算法可能会超时,比如当输入数组中有很多连续的1时。可以通过进一步优化算法来提高效率。例如,可以使用双指针来记录第一个和第二个部分的结束位置,从而减少遍历数组的次数。另外,可以使用位运算来加速计算当前部分的二进制数值。
  总之,对于此类问题,需要先分析题目要求,找到合适的算法思路,再实现具体的代码。在实现代码时,需要注意代码的可读性、正确性和效率,并进行充分的测试和验证。同时,也需要不断学习和探索新的算法思路,以提高自己的编程能力和解决问题的能力。

狂飙之后张译争议不断,女演员爆猛料内涵,称伺候不了他日前,狂飙中饰演姜超的刘若清在网络上对张译的一些言论引发了网民们的热烈讨论。她没有夸奖张译,而是把自己的想法说了出来,她对张译的评价并不高,言下之意就是他在片场做主,这是怎么回事?狂飙黄瑶举报高启强是最大败笔,拉低编剧和观众智商黄瑶大义灭亲陷入反腐靠坑爹的老套路黄瑶举报拉低了电视剧需要宣扬社会正能量的层次,也拉低了编剧和观众智商。扫黑除恶靠什么?靠党的正确领导靠上级坚定决心,靠政法干部廉洁奉公不怕牺牲,靠父母爱情中,王振彪和江德福,到底是谁管谁?剧情有暗示父母爱情是由刘静编剧,孔笙执导实力派演员郭涛梅婷刘琳任帅刘天池等主演的家庭情感大剧,以上世纪五十年代直至新世纪之初时代沧桑巨变下我的父母的爱情为主线,演绎了几个家庭两代中国人的平凡营地炉石标准日报20230209HSReplay官方今天推特发布了一条欧美亚三服钻石到传说分段大数据的推特。我今天在里面简单挑点。AAECAc38BQT47ASk7wS88ATNpQUN4aQElrcEssEE8生孩子,不能叫下人,没那么简单计划生育,并不是只是计划少生,多生也可以计划。司马南近期的视频谈到生孩子的问题,有这个说法。这种说法有点狡黠,有点圆滑,也可能当时创造这个词语也是有意识的留了一个后门。当时的情况,打造非遗生活美学空间远洲集团旗下远洲旅业为非遗传承献力目前,我国共有43个项目列入联合国教科文组织非遗名录名册,位居世界第一。非物质文化遗产不仅是一项古老的技艺的传承,更是千百年来中华民族智慧的结晶。近年来,非遗与旅游产业的相互融合逐雷蛇新款灵刃1618旗舰游戏本今晚开售i9RTX4090IT之家2月8日消息,雷蛇最新款灵刃16和灵刃18游戏本今晚正式发售,最高搭载i913950HXRTX40804090配置,售价3099元起。灵刃16i913950HXRTX408她是Dior的东方女神,首位登上欧洲高级秀场的亚洲模特欧洲时装界的首张亚洲面孔不久前,迪奥品牌在埃及吉萨金字塔前发布了2023秋季男装系列大秀。迪奥男装艺术总监KimJones向世人呈现了一场时尚与古文明的时空视觉盛宴。埃及古典夜空下揭秘海南原创民族舞剧白鹭南飞主创以电影质感展现舞台张力视频加载中新海南客户端南海网南国都市报2月9日消息(记者丁文文)白鹭在细沙上灵动的舞翅与滑翔,舞者们身着黎族服饰,伴着梦幻的沙舞台水舞台和唯美音乐翩跹起舞2月8日晚,由海南省委宣传她是外国美女,却成中国皇后,登上后位第一件事出兵灭自己母国随着口罩政策的放开,我们终于恢复了正常的生产生活,本来以为阔别三年的旅游终于可以开始,东亚周边走一趟,却直接碰上了韩国日本的软刀子,严格控制中国人入境的政策。相较于日本,韩国做的更一加Ace2跟一加11的差别有多大,价格竟然相差高达1400元?一个月的时间,继一加11后一加快速地推出了一加Ace2,这是一加有史以来发布新最快的,想当年的一年只出一款手机,变成了现在一年出多款手机了。当然,现在的一加回归OPPO后,有这个实
被湖人拒绝!加盟公牛!5届全明星亲口承认,詹姆斯错失三巨头为啥有的球员就想在洛杉矶这些大城市打球,无非就是这么几个原因。第一,大城市有灯红酒绿车水马龙,这是小城市没有办法比的。第二,大城市可以无限放大一位球员的商业价值。我们可以看看在密尔2855,甘愿降薪加盟湖人!一心联手詹姆斯,你仍对佩总耿耿于怀随着新赛季训练营的开幕,不管怎样,湖人球迷们只能接受威少还在他们阵容当中的现实。这支湖人,不管从什么角度,都不能被称之为三巨头球队,他们顶多能在保持健康的前提下,打出双核的效果。如珠江投资产品力和服务力打开可持续发展空间本文来源时代财经作者刘新歌中国房地产业从扩张式高增长进入高质量转型发展阶段。经过几年的调整尤其是近一年多来的行业变化,这句话成为业内共识。近30年的发展历程中,珠江投资始终坚持中国4。4亿年前鱼类化石,揭开生命演化奥秘图为重庆特异埋藏化石库化石照片。中科院古脊椎动物与古人类研究所供图核心阅读地球上现存99。8的脊椎动物都具有上颌与下巴,这些器官是怎么演化来的?中国科学院古脊椎动物与古人类研究所朱痿软不举,以人参大补元气,气血调,阴阳合,痿自除张先生,40岁,主诉痿软不起。患者自述初起初诸事正常,并生儿育女,逐渐年纪增长,前几年开始精出过早,逐渐全然不能用。此外伴有,神疲乏力,头晕耳鸣,心悸心烦等症,舌稍紫暗,脉沉细涩。从静白师太到元气少女,姜小果的三个变美思路,你学会了吗?二十不惑2前段时间迎来了大结局,卜冠今饰演的姜小果明显比第一部要元气好看很多。她的这波年轻化变美,虽然没有大刀阔斧的改动,但是毫无痕迹,并且保留了她的辨识度,是我们普通人可以借鉴的古鱼身上的秘密五种志留纪古鱼类新属种的艺术复原图,从上到下分别为蠕纹沈氏棘鱼新塑梵净山鱼双列黔齿鱼灵动土家鱼和奇迹秀山鱼。(中科院古脊椎所供图图)生命的起源和演化是当代科学的重大课题之一,其中脊此花树独特少有,家中有庭院的,一定要种植2棵,韵味十足此花树独特少有,家中有庭院的,一定要种植2棵,韵味十足如果家里有一个院子的,我想大部分人都会选择在里种植一些花草树木之类吧,适当地种植一些东西有很多好处,比如打发闲暇时间,修炼自己中国男乒同组对手完成首秀,中国香港女乒3比0取得世乒赛开门红北京时间9月30日上午10点,2022年世界乒乓球团体赛在我国成都正式打响。中国男乒同组对手斯洛文尼亚队以3比1战胜波多黎各队中国香港女乒首轮对阵意大利,杜凯琹带领球队取得3比0完香港经济发展底气十足来源人民网人民日报海外版活力四射的香港,一直是不少国际评比机构榜单上的领头羊。近日,加拿大菲沙研究所在世界经济自由度2022年度报告中,再次把香港评为全球最自由的经济体。自1996微信新增3个功能,视频通话可以自由开关摄像头了微信最新版使用了一段时间后,发现新增了3个功能,而且3个都非常实用,网友直呼这次终于不再是更新没用的功能了。具体是什么功能呢?一起来看看。视频通话自由开关摄像头以后微信视频通话,不
友情链接:快好找快生活快百科快传网中准网文好找聚热点快软网