首页 > 编程语言 >【教3妹学编程-算法题】数位和相等数对的最大和

【教3妹学编程-算法题】数位和相等数对的最大和

时间:2023-11-18 11:31:43浏览次数:35  
标签:30 nums int 18 数对 妹学 54 数位

【教3妹学编程-算法题】数位和相等数对的最大和_数位

3妹:2哥,你有没有看到新闻“18岁父亲为4岁儿子落户现身亲子鉴定”
2哥 : 啥?18岁就当爹啦?
3妹:确切的说是14岁好吧。
2哥 : 哎,想我30了, 还是个单身狗。
3妹:别急啊, 2嫂肯定在某个地方等着你去娶她呢。又不是结婚越早越好。
2哥:是啊, 这孩子14岁当爹,也太早了。
3妹:2哥,你找女朋友有什么条件没有哇?
2哥 : emmm, 以前希望找一个温柔漂亮的, 现在嘛, 女的、活的。毕竟年龄已经很大了, 已经30了…
3妹:才30而已嘛, 女生很多都喜欢找个比自己大一点的~
2哥 : 哎,你们女生最大能接受比自己大多少岁啊?
3妹:emmm, 这么不好说,要看具体女生,一般大个3-5岁都可以吧。 2哥说到最大, 我今天看到一个最大和的题目,让我也来考考你吧~

【教3妹学编程-算法题】数位和相等数对的最大和_数位_02

 1题目: 

给你一个下标从 0 开始的数组 nums ,数组中的元素都是 正 整数。请你选出两个下标 i 和 j(i != j),且 nums[i] 的数位和 与  nums[j] 的数位和相等。

请你找出所有满足条件的下标 i 和 j ,找出并返回 nums[i] + nums[j] 可以得到的 最大值 。

示例 1:

输入:nums = [18,43,36,13,7]
输出:54
解释:满足条件的数对 (i, j) 为:

  • (0, 2) ,两个数字的数位和都是 9 ,相加得到 18 + 36 = 54 。
  • (1, 4) ,两个数字的数位和都是 7 ,相加得到 43 + 7 = 50 。
    所以可以获得的最大和是 54 。
    示例 2:

输入:nums = [10,12,19,14]
输出:-1
解释:不存在满足条件的数对,返回 -1 。

提示:

1 <= nums.length <= 10^5
1 <= nums[i] <= 10^9

 2思路: 

【教3妹学编程-算法题】数位和相等数对的最大和_Math_03

排序+模拟,
详细见代码:

 3java代码: 

class Solution {
    public int maximumSum(int[] nums) {
        Arrays.sort(nums);
           int max1=-1;
           Map<Integer,Integer> map=new HashMap();
           for(int i=0;i<nums.length;i++){
               int val=get(nums[i]);
               if(!map.containsKey(val)){
                   map.put(val,nums[i]);
               }else{
                 max1=Math.max(map.get(val)+nums[i],max1);
                   map.put(val,nums[i]);       
               }
           }
           return max1;
    }


    public int get(int num){
        int s=0;
        while(num>0){
            s=s+num%10;
            num=num/10;
        }
        return s;
    }
}


标签:30,nums,int,18,数对,妹学,54,数位
From: https://blog.51cto.com/u_6813689/8460617

相关文章

  • 数位dp—卡尔文锦标赛
    [CEOI2015Day1]卡尔文球锦标赛题目描述译自CEOI2015Day1T2「Calvinballchampionship」一场卡尔文球比赛会有$n$名选手参与,他们的编号分别为$1\dotsn$,分为若干个非空的球队。我们规定球队之间按照每个球队编号最小的选手的编号排序,并且以从1开始的连续整数编号。举......
  • f通过new关键词进行函数调用,之后无论如何都会返回一个与F关联的普通对象(因为不是通过
    varF=function(){};Object.prototype.a=function(){};Function.prototype.b=function(){};varf=newF();关于这段代码的描述,正确的是:Af能取到a,但取不到bBf能取到a,bCF能取到b,不能取到aDF能取到a,不能取到b正确答案:A网上有一道美团外卖的面试题是这样的:Function......
  • 【竞赛题】找出强数对的最大异或值 I
    1题目: 给你一个下标从0开始的整数数组nums。如果一对整数x和y满足以下条件,则称其为强数对:|x-y|<=min(x,y)你需要从nums中选出两个整数,且满足:这两个整数可以形成一个强数对,并且它们的按位异或(XOR)值是在该数组所有强数对中的最大值。返回数组nums所有可能的强......
  • 【教3妹学编程-算法题】 在树上执行操作以后得到的最大分数
    3妹:2哥,今日都立冬了,可是天气一点都不冷。2哥 :立冬了,晚上要不要一起出去吃饺子?......
  • 【教3妹学编程-算法题】765. 情侣牵手
    3妹:2哥2哥,你看到新闻了吗?襄阳健桥医院院长公然“贩卖出生证明”,真是太胆大包天了吧。2哥 :我也看到新闻了,7人被采取刑事强制措施。就应该好好查查他们,一查到底!3妹:真的是太可气了,白衣天使,本应该治病救人,没想到竟然能干出这种事情。2哥 :哎,真相会迟到,但是不会缺席。幸亏好很......
  • MTK联发科MT8766/MT8166安卓核心板性能参数对比
    MT8766核心板采用联发科四核2G主频芯片方案,国内4G全网通。12nm先进工艺,支持Android9.0系统。GPU采用超强IMGGE8300,主频600MHz。支持高速LPDDR4/X,主频高达1600MHz。支持EMMC5.1。标配WIFI802.11ac/abgn,BT5.0。支持主流音视频格式和图片的解码。接口丰富,单/双路LVDS......
  • 【教3妹学编程-算法题】使数组变美的最小增量运算数
    2哥 :3妹,脸上的豆豆好了没呢。3妹:好啦,现在已经没啦2哥 :跟你说很快就会消下去的,还不信~既然你的容颜和心情都如此美丽,那我们就再做一道关于美丽的题吧。3妹:切,2哥就会取笑我,伤心时让我做题,开心时也让我做题! 1题目: 给你一个下标从0开始、长度为n的整数数组nums,和一个整......
  • 【教3妹学编程-算法题】117. 填充每个节点的下一个右侧节点指针 II
    2哥 :3妹,听说你昨天去面试了,怎么样啊?3妹:嗨,别提了,让我回去等通知,估计是没有通知了,还浪费我请了一天假。2哥 :你又请假了啊,你是怎么跟你那个严厉的老板请假的。3妹:我说我2哥生病了,嘿嘿~2哥:一猜就是说我生病了,自从你找工作,我这一年都病了十几回了……3妹:没办法,假不好请嘛,我尽快......
  • 教3妹学编程-算法题】2914. 使二进制字符串变美丽的最少修改次数
    3妹:呜呜,烦死了,脸上长了一个痘2哥 :不要在意这些细节嘛,不用管它,过两天自然不就好了。3妹:切,你不懂,影响这两天的心情哇。2哥 :我看你是不急着找工作了啊,工作那么辛苦,哪还有时间想这些啊。3妹:说到找工作,我又要去刷题了。2哥:我给你出一道关于美丽的题吧,让你的心情美丽美丽~ 1题目......
  • 【教3妹学编程-算法题】数组中两个数的最大异或值
    3妹:“太阳当空照,花儿对我笑,小鸟说早早早,你为什么背上炸药包”2哥 :3妹,什么事呀这么开心呀。3妹:2哥你看今天的天气多好啊,阳光明媚、万里无云、秋高气爽,适合秋游。2哥:是啊,都快立冬了,天气还是这么热。今年的冬天比以往来的要晚一些。3妹:晚来也是要来的,看天气预报下周要降温,估计没几......