Beach Day by Rodger Bliss
August 2020

Average Salary

Five coworkers want to know what the average of all their salaries is, but refuse to reveal ANY information about their own salaries to their coworkers. How can they calculate the average?

Submit your Guess




You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

3 guesses to Average Salary

    Warning: Use of undefined constant bfa_comments - assumed 'bfa_comments' (this will throw an Error in a future version of PHP) in /home/customer/www/ on line 132
  • Nanao Ise

    Hmmm…perhaps it might work something like this:

    The first worker chooses an arbitrary number – say, 10,000 or something else of the sort. Then they add their salary to it. Say that the first worker’s salary is 40,000 dollars – so when it’s added together, the first worker’s number is 50,000.

    This number is then whispered into the ear of the second worker. The second worker adds their own salary to it, and passes on the larger number to the third worker, and so on and so forth.

    When the fifth coworker has added their own salary to the number (so now the last coworker has a number containing the arbitrary number originally chosen, then all of the coworkers’ salaries), they whisper the final amount to the very first worker.

    And after the first coworker subtracts the arbitrary number originally chosen, the average salary of the workers is easily calculable.

  • Dude

    Exactly correct, Nanao Ise.

    You are today’s winner.

  • Devil'sAdvocate

    Let’s imagine the final number (known by Worker 5) is 210. He tells Worker 1 the final number. Worker 1 then tells everyone that the average salary among the 5 workers is 40. Worker 5 can deduce that 40*5 is 200, so Worker 1 added 10 to his original number.
    (Arbitrary value = KNOWN)
    Worker 5 then goes to Worker 2 and tells him that he’s discovered Worker 1 added 10 to the original number and asks that Worker 2 reveal the number Worker 1 originally whispered to him. They then subtract 10 from that number and have found what Worker 1’s salary is. (W1=X-A, X being the number W1 whispered to W2, A representing the arbitrary number)
    (W1’s salary = KNOWN)
    With W1’s salary and the arbitrary number known, W3 can recall the number W2 whispered to him and subtract W1’s salary and the arbitrary value to find what W2’s salary is. (W2=W1-A)
    (W2’s salary = KNOWN)
    Assuming W3 shares the information he’s learned about W1 and W2 (though it would be against his best interest, let’s assume W3 does not realize this), W4 could then subtract W1’s salary, the arbitrary value and W2’s salary from the number W3 whispered to him to find W3’s salary. (W3=X-W1-A-W2, X being the number W3 whispered to him, A representing the known arbitrary value).
    (W3’s salary = KNOWN)
    Using the same idea, W4 reveals what he’s learned to W5, who does the same math to find W4’s salary (W4=X-W1-A-W2-W3).
    (W4’s salary = KNOWN)
    If W5 continues this ignorance, he will reveal what he’s learned to W1 and W1 will learn W5’s salary, along with everyone else’s.
    If W5 recognizes this cycle and keeps what he’s learned to himself, everyone will know the salary of the workers who came before them in the line and W5 will be the only one to know everyone’s salary.
    (W5 = WIN)

    Assuming none of the workers will reveal their own salary, I don’t think it would be possible for the workers to calculate W5’s salary because they would need to know W4’s salary, which is only known by W4, who won’t share his own information, and W5, who won’t share W4’s information because he knows that that would, in turn, reveal his own information.