Skip to content

Instantly share code, notes, and snippets.

@wptechprodigy
Last active April 29, 2020 15:57
Show Gist options
  • Save wptechprodigy/10cda2e93dcce5142d33e6747ae564aa to your computer and use it in GitHub Desktop.
Save wptechprodigy/10cda2e93dcce5142d33e6747ae564aa to your computer and use it in GitHub Desktop.

Revisions

  1. wptechprodigy revised this gist Apr 29, 2020. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion warnTheDeveloper.js
    Original file line number Diff line number Diff line change
    @@ -12,7 +12,7 @@

    function warnTheDeveloper(n, m, s) {
    if (typeof n !== 'number' || typeof m !== 'number' || typeof s !== 'number') {
    // Assuming we can't have either of developers, sweets nor chair numbers to be zero
    // Assuming we can't have neither of developers, sweets nor chair numbers to be zero
    if (n < 1 || m < 1 || s < 1) return 'Number has to be greater than 1';

    return 'Provide a valid number';
  2. wptechprodigy created this gist Apr 29, 2020.
    32 changes: 32 additions & 0 deletions warnTheDeveloper.js
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,32 @@
    /**
    * Gets the seat number of the develper to get the last sweet
    * of some sweets distributed as a treat to developers. The last sweet
    * happens to taste AWFUL.
    *
    * @param n Number of developers
    * @param m Number of sweets
    * @param s Chair number to begin passing out sweets
    *
    * @returns Seat number of the developer to be warned
    */

    function warnTheDeveloper(n, m, s) {
    if (typeof n !== 'number' || typeof m !== 'number' || typeof s !== 'number') {
    // Assuming we can't have either of developers, sweets nor chair numbers to be zero
    if (n < 1 || m < 1 || s < 1) return 'Number has to be greater than 1';

    return 'Provide a valid number';
    }

    let developerSeatNumber;
    const sweetsLeftAfterPossiblyGoingRound = m % n;

    // Starting from the first person while sweets can go round
    if (sweetsLeftAfterPossiblyGoingRound === 0 && s === 1) {
    return n;
    }

    developerSeatNumber = s + sweetsLeftAfterPossiblyGoingRound - 1;

    return developerSeatNumber;
    }