1class Solution {2public:3int sumDigits(int num) {4int sum = 0;5while (num) {6sum += num % 10;7num /= 10;8}9return sum;10}1112int getLucky(string s, int k) {13int sum = 0;14for (char &ch : s) {15int val = ch - 'a' + 1;16sum += val < 10 ? val : (val % 10 + val / 10);17}1819k -= 1; // Why ? We already did one transformation above (getting sum of20// character values)21while (k-- && sum >= 10) // sum >= 10 reduces unwanted Transform calls because if22// we are left with 1-digit,that will be our result23sum = sumDigits(sum);2425return sum;26}27};