Leetcode每日一题:2544. 交替数字和(2023.7.12 C++)

简单题无解析

目录

简单题无解析

2544. 交替数字和

题目描述:

实现代码:


2544. 交替数字和

题目描述:

        你一个正整数 n 。n 中的每一位数字都会按下述规则分配一个符号:

  • 最高有效位 上的数字分配到  号。
  • 剩余每位上数字的符号都与其相邻数字相反。

返回所有数字及其对应符号的和。

示例 1:

输入:n = 521
输出:4
解释:(+5) + (-2) + (+1) = 4

示例 2:

输入:n = 111
输出:1
解释:(+1) + (-1) + (+1) = 1

示例 3:

输入:n = 886996
输出:0
解释:(+8) + (-8) + (+6) + (-9) + (+9) + (-6) = 0

实现代码:

class Solution {
public:
    int alternateDigitSum(int n) {
        int res = 0;
        int sign = -1;
        while (n)
        {
            int a = n % 10;
            res += a * sign;
            sign = -sign;
            n /= 10;
        }
        return -sign * res;
    }
};

你可能感兴趣的:(Leetcode,c++,算法,leetcode)