「每日LeetCode」2023年2月13日

本文最后更新于:2023年3月19日 晚上

2544.交替数字和

2544.交替数字和

Category Difficulty Likes Dislikes
algorithms Easy (80.37%) 5 -

Tags
Companies
给你一个正整数 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

提示:

  • 1 <= n <= 109

Discussion | Solution

思路

按题意模拟即可

解答

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
/*
* @lc app=leetcode.cn id=2544 lang=javascript
*
* [2544] 交替数字和
*/

// @lc code=start
/**
* @param {number} n
* @return {number}
*/
var alternateDigitSum = function (n) {
n = n + "";
let sum = 0;
for (let i = 0; i < n.length; i++) {
const char = n[i];
const number = (i % 2 === 0 ? 1 : -1) * +char;
sum += number;
}
return sum;
};
// @lc code=end