Thursday, September 1, 2011
Monday, July 25, 2011
Notch's Lottery Question
Notch ( the creator of Minecraft ) posted an interesting lottery problem.
Lottery Question
Lottery Answer
I quickly wrote this java to help people understand the results.
Output was:
So in this instance it only took 18,936 draws before one of the lottery members won 3 times, and the vast majority of lottery players 981,230 had not won at all!
After running the program several times it seems like a 3 time winner will show up somewhere between 10,000 and 25,000 draws. This is quite a small number compared to the 1 mil players, Showing that It is much more likely that somebody else will win 3 times before you win once.
Lottery Question
Lottery Answer
I quickly wrote this java to help people understand the results.
package com.jsa;
import java.util.Iterator;
import java.util.Random;
import java.util.Vector;
public class test {
final static int LOTTOSIZE = 1000000;
final static int WINSTOP = 3;
public static void main( String args[] ){
Vector<Vector> wins = new Vector<Vector<Integer>>(WINSTOP);
Vector<Integer> oneWin = new Vector<Integer>(LOTTOSIZE);
wins.add(oneWin);
Random random = new Random( System.currentTimeMillis());
boolean foundXWins = false;
int draws = 0;
while ( ! foundXWins ){
Integer winner = random.nextInt(LOTTOSIZE);
draws++;
boolean notFound = true;
for (Iterator iterator = wins.iterator(); iterator.hasNext() && notFound ;) {
Vector<Integer> vector = (Vector<Integer>) iterator.next();
if ( vector.contains(winner) ){
notFound = false;
vector.remove(winner);
if ( iterator.hasNext() ){
vector = (Vector<Integer>) iterator.next();
} else {
vector = new Vector<Integer>(LOTTOSIZE);
wins.add(vector);
System.out.println( "Someone has just won " + wins.size() + " times, after only " + draws +" draws. " );
}
vector.add(winner);
}
}
if ( notFound ){
oneWin.add(winner);
}
if ( wins.size() == WINSTOP ){
foundXWins = true;
int nonWinners = LOTTOSIZE;
for (int i = 0; i &tl; wins.size() ; i++ ){
nonWinners -= wins.get(i).size();
}
System.out.println( "Win Limit Reached: " + wins.size() + " wins.");
System.out.println( "There are " + nonWinners + " who have not yet won once." );
}
if( draws %10000 == 0 || foundXWins ){
StringBuilder sb = new StringBuilder();
sb.append( draws );
sb.append( "," );
for (int i = 0; i &tl; wins.size() ; i++ ){
sb.append( wins.get(i).size() );
sb.append( "," );
}
System.out.println( sb );
}
}
}
}
Output was:
Someone has just won 2 times, after only 177 draws. 10000,9902,49, Someone has just won 3 times, after only 18936 draws. Win Limit Reached: 3 wins. There are 981230 who have not yet won once. 18936,18605,164,1,
So in this instance it only took 18,936 draws before one of the lottery members won 3 times, and the vast majority of lottery players 981,230 had not won at all!
After running the program several times it seems like a 3 time winner will show up somewhere between 10,000 and 25,000 draws. This is quite a small number compared to the 1 mil players, Showing that It is much more likely that somebody else will win 3 times before you win once.
Tuesday, June 21, 2011
Cabot Cheese = Good ; Coupons.com = Bad
Cabot Cheese is giving out samples at Wegmans this weekend!
http://www.cabotcheese.coop/roadshow/index.php
That's awesome, they have good cheese. Trish and I have even visited the factory/creamery in VT.
I 'registered' on the promise of a coupon, and was redirected to coupons.com, Which stated that I had an Unsupported browser.
They really mean OS, as I was using Chrome on Linux. It seems they want to install some Coupon App/Program to do the printing.
My guess is they are trying to prevent duplication of the coupon, but come on, if it's printed at home, any home with a scanner, or anybody with access to a library with a photocopier, has the ability to make copies off the first print.
Coupon DRM , really, come on..
http://www.cabotcheese.coop/roadshow/index.php
That's awesome, they have good cheese. Trish and I have even visited the factory/creamery in VT.
I 'registered' on the promise of a coupon, and was redirected to coupons.com, Which stated that I had an Unsupported browser.
They really mean OS, as I was using Chrome on Linux. It seems they want to install some Coupon App/Program to do the printing.
My guess is they are trying to prevent duplication of the coupon, but come on, if it's printed at home, any home with a scanner, or anybody with access to a library with a photocopier, has the ability to make copies off the first print.
Coupon DRM , really, come on..
Tuesday, June 7, 2011
Random Woot Shirt Haul
Gingers! -- http://shirt.woot.com/friends.aspx?k=17764
Doctors! -- http://shirt.woot.com/friends.aspx?k=17810
! ! --
Doctors! -- http://shirt.woot.com/friends.aspx?k=17810
! ! --
Subscribe to:
Comments (Atom)

