#!/usr/bin/env python

import sys
import treap
import random

n=7

def rnd_num():
    return int(random.random() * 100)

def rnd_seq():
    for i in xrange(n):
        yield rnd_num()

def inc_seq():
    return xrange(n)

def dec_seq():
    return xrange(n-1, -1, -1)

def demo(sequence, order):
    print '%d values, %s order' % (n, order)
    tr = treap.treap()
    for i in sequence():
        print 'adding',i
        tr[i] = 0
        print tr
        print

def usage(retval):
    print >> sys.stderr, "Usage: %s --increasing --decreasing --random\n" % sys.argv[0]
    sys.exit(retval)

for arg in sys.argv[1:]:
    if arg == '--increasing':
        demo(inc_seq, 'increasing')
    elif arg == '--decreasing':
        demo(dec_seq, 'decreasing')
    elif arg == '--random':
        demo(rnd_seq, 'random')
    elif arg in [ '--help', '-h' ]:
        usage(0)
    else:
        print >> sys.stderr, "%s: illegal argument: %s" % (sys.argv[0], arg)
        usage(1)
    print
