Skip to content

Instantly share code, notes, and snippets.

@binury
Last active June 27, 2017 02:47

Revisions

  1. Bin Ury revised this gist Jun 27, 2017. 1 changed file with 2 additions and 0 deletions.
    2 changes: 2 additions & 0 deletions solutions.js
    Original file line number Diff line number Diff line change
    @@ -1,3 +1,5 @@
    // Solutions in Javascript for the Chillin & Grillin
    // coding event @ Geekdom
    function numword (num) {
    const numwords = [
    'Zero','One','Two','Three','Four',
  2. Bin Ury created this gist May 27, 2017.
    75 changes: 75 additions & 0 deletions solutions.js
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,75 @@
    function numword (num) {
    const numwords = [
    'Zero','One','Two','Three','Four',
    'Five','Six','Seven','Eight','Nine'
    ];
    return numwords[num]
    }

    // no worky :(
    function excelCol (num) {
    const KEY = 'abcdefghijklmnopqrstuvwxyz'.toUpperCase().split('');
    let result = [];
    const places = [729, 27, 1];

    if (!num) return 'A';

    for (const place of places) {
    let val = Math.floor(num / place); /*?*/
    if (val >= 1) {
    num -= place * val;
    result.push(KEY[ val - 1])
    } else { result.push(' ') }
    }
    while (result[0] === ' ') {
    console.log('poppin');
    result.shift();
    }
    return result.map( (val,idx,arr) => {
    return val === ' ' ? 'A' : val;
    }).join('');

    }

    function isPalindrome (num) {
    let numStr = String(num);
    return numStr === numStr.split('').reverse().join('');
    }

    function countFours (num) {
    let count = 0;
    for (let i = 0; i <= num; i++) {
    if (String(i).includes('4')) {
    count++;
    }
    }
    return count;
    }

    function countFactorials (low, high) {
    function factorial(num)
    {
    if (num < 0) {
    return -1;
    }
    else if (num == 0) {
    return 1;
    }
    let tmp = num;
    while (num-- > 2) {
    tmp *= num;
    }
    return tmp;
    }
    count = 0;
    for (let i = 1; factorial(i) <= high; i++) {
    const test = factorial(i);
    if (test < low) {
    continue;
    }
    count++;
    }
    return count;
    }

    console.log(excelCol(28));