168. Excel Sheet Column Title

Difficulty:
Related Topics:
Similar Questions:

Problem

Given a positive integer, return its corresponding column title as appear in an Excel sheet.

For example:

    1 -> A
    2 -> B
    3 -> C
    ...
    26 -> Z
    27 -> AA
    28 -> AB 
    ...

Example 1:

Input: 1
Output: "A"

Example 2:

Input: 28
Output: "AB"

Example 3:

Input: 701
Output: "ZY"

Solution

/**
 * @param {number} n
 * @return {string}
 */
var convertToTitle = function(n) {
  var num = n;
  var tmp = 0;
  var res = '';
  while (num > 0) {
    tmp = num % 26;
    if (tmp === 0) tmp = 26;
    res = getChar(tmp) + res;
    num = (num - tmp) / 26;
  }
  return res;
};

var getChar = function (num) {
  var start = 'A'.charCodeAt(0);
  return String.fromCharCode(start + num - 1);
};

Explain:

nope.

Complexity: