How Often Does the Best Chess Player Win?

In this weeks installment of Matt solves a riddle with a simulation, we have the ridder express question from fivethirtyeight.  In a chess match, 12 games are played and the first player to 6.5 points wins.  You get 1 point for a win, 0.5 points for a draw, and 0 for a loss.  It’s very possible that the best player loses a chess match with this scoring system and only twelve games.  It’s more than football, baseball, or basketball, but is 12 games enough to decide?  Furthermore, how many games would be required to determine the winner 90% or 99% of the time.

Continue reading “How Often Does the Best Chess Player Win?”

Two Phone Numbers With The Same Digits?

The 538 Riddler question this week isn’t especially interesting. What are the chances that somebody’s phone number has the exact same seven digits as your phone number, just in a different order? But as I was driving home thinking about it, I realized that there were several different ways to go about this and I wondered which was faster.

Continue reading “Two Phone Numbers With The Same Digits?”

Average Distance Between Points On or In a Circle

I recently came across an interesting math problem on youtube (why youtube keeps showing me these when I’m watching cooking shows, I’ll never understand, but I digress).  What is the average distance between two random points on a circle?  This can also be expanded to ask what is the average distance between two random points inside a circle?  Now of course I’m not going to sit down and do lots of math to figure this out, but it is a kinda interesting problem for a monte carlo simulation.  So I dusted the python off and went to work.

Continue reading “Average Distance Between Points On or In a Circle”

Using Retirement Savings for a Home

It is often pretty hard to come up with the money for a down payment on a new house purchase so it’s natural for people to look to what is often their largest savings account: their retirement. But which types of retirement accounts can be used for a down payment, and should you do it?

Continue reading “Using Retirement Savings for a Home”

Web Scrapping LearnedLeague with Python

About a year ago one of my friends introduced me to the online trivia LearnedLeague (LL for short).  You have to be invited by a current member but then you are assigned a “rundle” or group of people about your level to play against and answer trivia, etc, etc.  We not have 8 different friends playing and have a groupme chat going to discuss answers each day (after submitting of course).  But it got kinda annoying to log in to LL each morning and navigate to the four different rundles we’re in to see the results or compare us amongst ourselves.  So I used my web scraping and python to do it for me!

Continue reading “Web Scrapping LearnedLeague with Python”

My First 6 Months Swimming = 100km Total!

On January 11th, a new gym (VASA fitness) opened in my area and I finally had an affordable option to swim again and started going fairly regularly. I’m hoping that somebody might find this useful or it might inspire them to start swimming. I swim for cardio and have absolutely no interest in ever competing. Pool is SCM, three lanes, for what it’s worth.  Here’s the story and some tips: Continue reading “My First 6 Months Swimming = 100km Total!”

Cheap Flight Twitter Bot in Python

I love to travel.  And something that makes that a lot easier is cheap flights.  There are many websites and even twitter accounts that exist only to point out cheap flights.  For about a year I’ve followed several twitter accounts for fare deals and have alerts turned on so that I don’t miss something good.  Currently, I get about 50 alerts a day that light up my phone and distract me from whatever I’m doing… but only one or two of those are actually from my home airport of DEN.  So I created a python script to help me out.

Continue reading “Cheap Flight Twitter Bot in Python”

Average President’s Birthday

Nate Silver (of 538 fame) tweeted an interesting problem today. Somebody on Reddit had averaged the birthdays of all the presidents and found it to be July 4th (link). Nate responded that it was wrong and said the real average is sometime in late November. I thought it was an interesting problem and figured I’d work on my python skills so I decided to see for myself and threw in a couple of alterations as well.

Continue reading “Average President’s Birthday”

Fizz Buzz – The Easiest Interview Question

Have you heard of Fizz Buzz?  It’s commonly used as an basic software interview question or an intro programming example.  It’s based on a game meant to teach children division and goes like this.  The children sit in a circle and count up from one; but, if your number is divisible by 3 you say “Fizz” instead of your number and if your number is divisible by 5 you say “Buzz” instead of your number.  If your number is divisible by both 3 and 5 you say  “Fizz Buzz”.

Continue reading “Fizz Buzz – The Easiest Interview Question”

Birthday Paradox Monte Carlo Simulation

Many of you are familiar with the Birthday Paradox.  If you want to read more about it you can find a good article here.  Basically, it says that in a room of 23 people, there is a 50% chance that at least two people share a birthday.  And if you increase that number to 75 people, the chances go up to 99.9%.  I wanted to explore this a little more and rather than doing the math (boring!), I decided to do a Monte Carlo simulation, run it a bunch of times, and plot the results.

Continue reading “Birthday Paradox Monte Carlo Simulation”