2022-02-08 Daily-Challenge

Today I have done leetcode's February LeetCoding Challenge with cpp.

February LeetCoding Challenge 8

Description

Add Digits

Given an integer num, repeatedly add all its digits until the result has only one digit, and return it.

Example 1:

Input: num = 38
Output: 2
Explanation: The process is
38 --> 3 + 8 --> 11
11 --> 1 + 1 --> 2 
Since 2 has only one digit, return it.

Example 2:

Input: num = 0
Output: 0

Constraints:

  • 0 <= num <= 231 - 1

Follow up: Could you do it without any loop/recursion in O(1) runtime?

Solution

class Solution {
public:
  int addDigits(int num) {
    if(!num) return num;
    if(!(num % 9)) return 9;
    return num % 9;
  }
};

// Accepted
// 1101/1101 cases passed (5 ms)
// Your runtime beats 17.94 % of cpp submissions
// Your memory usage beats 75.31 % of cpp submissions (5.9 MB)