문제를 이해하고 있다면 바로 풀이를 보면 됨
전체 코드로 바로 넘어가도 됨
마음대로 번역해서 오역이 있을 수 있음
양의 정수 n이 주어진다. n의 각 자릿수는 다음 규칙에 따른 부호를 갖는다.
각 자릿수를 해당 부호와 함께 모두 더한 값을 반환해라.
#1
Input: n = 521
Output: 4
Explanation: (+5) + (-2) + (+1) = 4
#2
Input: n = 111
Output: 1
Explanation: (+1) + (-1) + (+1) = 1
#3
Input: n = 886996
Output: 0
Explanation: (+8) + (-8) + (+6) + (-9) + (+9) + (-6) = 0
class Solution {
public int alternateDigitSum(int n) {
int digits = 0;
int temp = n;
while(temp != 0){
digits++;
temp /= 10;
}
int sum = 0;
int sign = (digits & 1) == 0 ? -1 : 1;
while(n != 0){
sum += (n % 10) * sign;
sign *= -1;
n /= 10;
}
return sum;
}
}