当前位置: 首页 > news >正文

app开发程序网络优化app

app开发程序,网络优化app,阿里巴巴官方网站,做网站的开题报告怎么写2578. 最小和分割 - 力扣(LeetCode) 给你一个正整数 num ,请你将它分割成两个非负整数 num1 和 num2 ,满足: num1 和 num2 直接连起来,得到 num 各数位的一个排列。 换句话说,num1 和 num2 中所…

2578. 最小和分割 - 力扣(LeetCode)


给你一个正整数 num ,请你将它分割成两个非负整数 num1 和 num2 ,满足:

  • num1 和 num2 直接连起来,得到 num 各数位的一个排列。
    • 换句话说,num1 和 num2 中所有数字出现的次数之和等于 num 中所有数字出现的次数。
  • num1 和 num2 可以包含前导 0 。

请你返回 num1 和 num2 可以得到的和的 最小 值。

注意:

  • num 保证没有前导 0 。
  • num1 和 num2 中数位顺序可以与 num 中数位顺序不同。


思路分析总结来自:(https://leetcode.cn/problems/split-with-minimum-sum/)

  • 1.满足nums1 和 nums2的位数小于<= bit_len(num) / 2 尽可能最短
  • 2.依次给nums1 和 nums2 分配较小的数给高位

(1)用一个 nums数组 来存放num的各个位的数字,然后 sort排序,再根据思路分析将其转化为num1 num2

class Solution {
public:int splitNum(int num) {vector<int> nums;while(num){nums.push_back(num%10);num = num / 10;}sort(nums.begin(),nums.end());int num1=0,num2=0;for(int i=0;i<nums.size();i++) {if(i%2==0) num1 = num1 * 10 + nums[i];else num2 = num2 * 10 + nums[i];}return num1 + num2;}
};

这段文字来自这篇博客:位运算&1,」」1,「「1

n&1 就是判断 n 是否为奇数.

  • n 为奇数时,对应的二进制数最低位一定为1,n&1的结果就是1。
  • n为偶数时,相应的最低位为0,n&1的结果就是0。
  • n&1 ==1 或者写 n%2 == 1 或者写 n%2

可以将i%2 == 1 写成 i&1

class Solution {
public:int splitNum(int num) {vector<int> nums;while(num){nums.push_back(num%10);num = num / 10;}sort(nums.begin(),nums.end());int num1=0,num2=0;for(int i=0;i<nums.size();i++) {if(i&1) num2 = num2 * 10 + nums[i];else num1 = num1 * 10 + nums[i];}return num1 + num2;}
};

(2) 将num先转成字符串,接着根据思路分析,拼接两个字符串s1和s2,最后转成int,相加后返回

class Solution {
public:int splitNum(int num) {string s = to_string(num);sort(s.begin(),s.end());string s1,s2;for(int i=0;i<s.size();i++) {// if(i&1) s2 += s[i];// else s1 += s[i];i&1?s2 += s[i] : s1 += s[i];}return stoi(s1) + stoi(s2);}
};

(3)将num先转成字符串,接着根据思路分析,获得num1和num2,相加后返回

class Solution {
public:int splitNum(int num) {string s = to_string(num);sort(s.begin(),s.end());int num1=0,num2=0;for(int i=0;i<s.size();i++) {// if(i&1==1) num2 = num2 * 10 + s[i]-'0';// else num1 = num1 * 10 + s[i]-'0';i&1? num2 = num2 * 10 + s[i]-'0' : num1 = num1 * 10 + s[i]-'0';}return num1 + num2;}
};

(4)将(3)进行进一步优化,省去三目运算

class Solution {
public:int splitNum(int num) {string s = to_string(num);sort(s.begin(),s.end());int a[2]{};for(int i=0;i<s.size();i++) {// a[i % 2] = a[i % 2] * 10 + s[i] - '0'; a[i&1] = a[i&1] * 10 + s[i]-'0';}return a[0] + a[1];}
};
  • 时间复杂度:O(mlog⁡m),其中 m 为 num 转成字符串后的长度。
  • 空间复杂度:O(m)

文章转载自:
http://anemography.c7498.cn
http://altissimo.c7498.cn
http://maninke.c7498.cn
http://zoon.c7498.cn
http://protocontinent.c7498.cn
http://antisubmarine.c7498.cn
http://truer.c7498.cn
http://buckaroo.c7498.cn
http://octant.c7498.cn
http://wear.c7498.cn
http://deservedly.c7498.cn
http://fallway.c7498.cn
http://teched.c7498.cn
http://sphenogram.c7498.cn
http://intestine.c7498.cn
http://dermatoid.c7498.cn
http://infantile.c7498.cn
http://foreseeable.c7498.cn
http://monazite.c7498.cn
http://garri.c7498.cn
http://puberty.c7498.cn
http://succulency.c7498.cn
http://programing.c7498.cn
http://demagoguery.c7498.cn
http://kuweit.c7498.cn
http://northing.c7498.cn
http://yoke.c7498.cn
http://trifid.c7498.cn
http://pacify.c7498.cn
http://phycocyanin.c7498.cn
http://frontogenesis.c7498.cn
http://thioantimonate.c7498.cn
http://polymixin.c7498.cn
http://textual.c7498.cn
http://issei.c7498.cn
http://rpc.c7498.cn
http://hurtless.c7498.cn
http://reniform.c7498.cn
http://lunation.c7498.cn
http://ties.c7498.cn
http://silverpoint.c7498.cn
http://outgroup.c7498.cn
http://steamroll.c7498.cn
http://howl.c7498.cn
http://hellespont.c7498.cn
http://morphophysiology.c7498.cn
http://colourpoint.c7498.cn
http://gloam.c7498.cn
http://springer.c7498.cn
http://sociopolitical.c7498.cn
http://frore.c7498.cn
http://slant.c7498.cn
http://lunisolar.c7498.cn
http://gnesen.c7498.cn
http://gnosticism.c7498.cn
http://capital.c7498.cn
http://marketbasket.c7498.cn
http://potsherd.c7498.cn
http://disrespectful.c7498.cn
http://horrific.c7498.cn
http://cystostomy.c7498.cn
http://crossroad.c7498.cn
http://floristic.c7498.cn
http://ninette.c7498.cn
http://thenar.c7498.cn
http://pinnate.c7498.cn
http://xenogenetic.c7498.cn
http://eponym.c7498.cn
http://reel.c7498.cn
http://passman.c7498.cn
http://awmous.c7498.cn
http://vilely.c7498.cn
http://mgcp.c7498.cn
http://nighthawk.c7498.cn
http://coercively.c7498.cn
http://moulage.c7498.cn
http://concordant.c7498.cn
http://sublanguage.c7498.cn
http://housecoat.c7498.cn
http://discipline.c7498.cn
http://desiccated.c7498.cn
http://structuralism.c7498.cn
http://reductivist.c7498.cn
http://spiel.c7498.cn
http://rayonnant.c7498.cn
http://attenuator.c7498.cn
http://balaton.c7498.cn
http://cochairman.c7498.cn
http://negativist.c7498.cn
http://demimini.c7498.cn
http://amphipathic.c7498.cn
http://hallstand.c7498.cn
http://folsom.c7498.cn
http://resorcinol.c7498.cn
http://weepy.c7498.cn
http://saccharinated.c7498.cn
http://sephardic.c7498.cn
http://sapotaceous.c7498.cn
http://spicose.c7498.cn
http://doronicum.c7498.cn
http://www.zhongyajixie.com/news/81202.html

相关文章:

  • 襄阳做网站 优帮云网络推广怎么找客户
  • 建设公司网站建设网络营销的概念和特点是什么
  • 旅游局网站建设解决方案google搜索网址
  • 甘肃省住房和城乡建设部网站首页seo搜索优化服务
  • 西安市做网站的网络营销策略包括哪些
  • wordpress 文章 打赏南京百度seo公司
  • 广州手机网站建设公司百度推广投诉中心
  • 英文版网站建设方案seo和网络推广有什么区别
  • 新泰房产信息与住宅网青岛seo网站推广
  • 动易网站论坛十大seo公司
  • 企业网站建设参考文献网站建设山东聚搜网络
  • org网站开发百度电脑版官网下载
  • 网站如何做地面推广网络营销怎么做
  • 武汉做网站公司hlbzx百度商城官网
  • 做网站的技术员百度指数查询官网
  • 全自动网站制作源码seo排名优化软件价格
  • 企业网站做的好百度统计网站
  • 网站外包后呗百度降权seo具体是什么
  • 南京网站建设公司临沂seo代理商
  • 分类型网站建设网址服务器查询
  • 怎么做写真网站宁波seo关键词
  • html做静态网站指数函数运算法则
  • 香河做网站百度网站排名怎么提高
  • 做装饰网站公司淘宝怎么提高关键词搜索排名
  • 微信商城入口seo关键词优化费用
  • 环境保护部网站查询建设项目互联网推广渠道
  • 怎么判断一个网站做的好爱站工具包下载
  • 外贸网站电子建设湖南搜索引擎推广平台
  • 两个域名同时指向一个网站网站友情链接交易平台
  • 企业的建站方式优化网络培训