• 2562.找出数组中的串联值


    2562. 找出数组的串联值 - 力扣(LeetCode)

    给你一个下标从 0 开始的整数数组 nums 。

    现定义两个数字的 串联 是由这两个数值串联起来形成的新数字。

    • 例如,15 和 49 的串联是 1549 。

    nums 的 串联值 最初等于 0 。执行下述操作直到 nums 变为空:

    • 如果 nums 中存在不止一个数字,分别选中 nums 中的第一个元素和最后一个元素,将二者串联得到的值加到 nums 的 串联值 上,然后从 nums 中删除第一个和最后一个元素。
    • 如果仅存在一个元素,则将该元素的值加到 nums 的串联值上,然后删除这个元素。

    返回执行完所有操作后 nums 的串联值。

    示例 1:

    输入:nums = [7,52,2,4]
    输出:596
    解释:在执行任一步操作前,nums 为 [7,52,2,4] ,串联值为 0 。
     - 在第一步操作中:
    我们选中第一个元素 7 和最后一个元素 4 。
    二者的串联是 74 ,将其加到串联值上,所以串联值等于 74 。
    接着我们从 nums 中移除这两个元素,所以 nums 变为 [52,2] 。
     - 在第二步操作中: 
    我们选中第一个元素 52 和最后一个元素 2 。 
    二者的串联是 522 ,将其加到串联值上,所以串联值等于 596 。
    接着我们从 nums 中移除这两个元素,所以 nums 变为空。
    由于串联值等于 596 ,所以答案就是 596 。
    

    示例 2:

    输入:nums = [5,14,13,8,12]
    输出:673
    解释:在执行任一步操作前,nums 为 [5,14,13,8,12] ,串联值为 0 。 
    - 在第一步操作中: 
    我们选中第一个元素 5 和最后一个元素 12 。 
    二者的串联是 512 ,将其加到串联值上,所以串联值等于 512 。 
    接着我们从 nums 中移除这两个元素,所以 nums 变为 [14,13,8] 。
    - 在第二步操作中:
    我们选中第一个元素 14 和最后一个元素 8 。
    二者的串联是 148 ,将其加到串联值上,所以串联值等于 660 。
    接着我们从 nums 中移除这两个元素,所以 nums 变为 [13] 。 
    - 在第三步操作中:
    nums 只有一个元素,所以我们选中 13 并将其加到串联值上,所以串联值等于 673 。
    接着我们从 nums 中移除这个元素,所以 nums 变为空。 
    由于串联值等于 673 ,所以答案就是 673 。

    思路:

    可以设置俩个指针,分别指向数组的头和尾,,然后通过这俩个指针获取数组的值,然后编写一个函数用于合成前后数值,然后加一个判断数组里面是否剩一个,然后相加

    完整代码:

    1. class Solution {
    2. public long findTheArrayConcVal(int[] nums) {
    3. long sum = 0;
    4. int start = 0;
    5. int end = nums.length - 1;
    6. while(start<end){
    7. sum+=numAdd(nums[start],nums[end]);
    8. start++;
    9. end--;
    10. }
    11. if(start == end){
    12. sum += nums[start];
    13. }
    14. return sum;
    15. }
    16. public int numAdd(int start,int end){
    17. String st = String.valueOf(start);
    18. String ed = String.valueOf(end);
    19. String result = start + "" + end;
    20. int num = Integer.parseInt(result);
    21. return num;
    22. }
    23. }
  • 相关阅读:
    selenium.webdriver chrome驱动下载地址
    第一个C/C++项目
    基于卷积神经网络的乳腺癌分类 深度学习 医学图像 计算机竞赛
    郑州软件开发|小程序跟服务号如何结合使用?
    mysql主从备份
    Linux | 一篇文章带你深刻理解粘滞位
    机器学习 LabelEncoding OnehotEncoding
    zookeeper 进阶 —— (动态上下线监听;;分布式锁;;企业面试)(师承尚硅谷)
    Python 2022年面试题总结
    ucharts最详细教程(含踩坑记录)
  • 原文地址:https://blog.csdn.net/qq_74455082/article/details/133798841