<s> import sys <EOL> import random <EOL> from operator import add <EOL> from pyspark import SparkConf , SparkContext <EOL> def estimate ( idx ) : <EOL> x = random . random ( ) * <NUM_LIT:2> - <NUM_LIT:1> <EOL> y = random . random ( ) * <NUM_LIT:2> - <NUM_LIT:1> <EOL> return <NUM_LIT:1> if ( x * x + y * y < <NUM_LIT:1> ) else <NUM_LIT:0> <EOL> def main ( sc , * args ) : <EOL> slices = int ( args [ <NUM_LIT:0> ] ) if len ( args ) > <NUM_LIT:0> else <NUM_LIT:2> <EOL> N = <NUM_LIT> * slices <EOL> count = sc . parallelize ( xrange ( N ) , slices ) . map ( estimate ) <EOL> count = count . reduce ( add ) <EOL> print "<STR_LIT>" % ( <NUM_LIT> * count / N ) <EOL> sc . stop ( ) <EOL> if __name__ == '<STR_LIT:__main__>' : <EOL> conf = SparkConf ( ) . setAppName ( "<STR_LIT>" ) <EOL> sc = SparkContext ( conf = conf ) <EOL> main ( sc , * sys . argv [ <NUM_LIT:1> : ] ) </s>
