LeetCode 2535[数组元素和与数字和的绝对差值]

打印 上一主题 下一主题

主题 883|帖子 883|积分 2653

标题

链接

LeetCode 2535[数组元素和与数字和的绝对差值]
详情


实例


提示


题解

思绪

遍历容器,依次求出数字和与元素和,然后求差值:
通过 getSun 函数,求取元素的数字和 
getSun 函数的实现:
  将其对10取余操纵,获取的余数即为当前位的数字
  然后再除以10,继续对其举行10的取余操纵,获取各个位的数字 将各个位的数字相加并返回 llSunNum
遍历求出元素和 llSun
对 llSun 和 llSunNum 举行差值运算,然后通过 fabs 函数来举行绝对值操纵,即可获取绝对差,并返回
大概先对 llSun 和 llSunNum 判定一个巨细,用大的减小的,即可获取绝对差,并返回
代码
  1. class Solution {
  2. public:
  3.     int getSun(int num)
  4.     {
  5.         int iRet = 0;
  6.         while (num)
  7.         {
  8.             iRet += num % 10;
  9.             num /= 10;
  10.         }
  11.         return iRet;
  12.     }
  13.     int differenceOfSum(vector<int>& nums) {
  14.         
  15.         long long llSun = 0;
  16.         long long llSunNum = 0;
  17.         for (int i = 0; i < nums.size(); i++)
  18.         {
  19.             llSun += nums.at(i);
  20.             llSunNum += getSun(nums.at(i));
  21.         }
  22.         if (llSun > llSunNum)
  23.             return llSun - llSunNum;
  24.         else
  25.             return llSunNum - llSun;
  26.     }
  27. };
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

刘俊凯

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表