Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris

Re: Embargo algorithm

by Not_a_Number (Parson)
on Oct 29, 2013 at 21:15 UTC ( #1060221=note: print w/replies, xml ) Need Help??

in reply to Embargo algorithm

This is how I'd do it (albeit without using OO Perl):

use List::Util 'shuffle'; my @bag = shuffle qw( A B C D E ); my @embargoed = pop @bag; while ( 1 ) { my $time = ( localtime )[ 0 ]; # seconds sleep 1; if ( $time >= 55 ) { push @embargoed, pop @bag; push @bag, shift @embargoed if @embargoed > 2; @bag = shuffle @bag; sleep 5; } print "$time @embargoed\n"; }

NB: For testing porpoises, I've substituted seconds for minutes and minutes for hours. Adjusting this (including sleep times) is left as an excercise...

Update: Simplified code (and explanation). Minutes don't matter!

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1060221]
[LanX]: damn cho, I wanted to consider a duplicate again, thus creating a linked list of reaped nodes ;-)

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (11)
As of 2017-05-24 20:01 GMT
Find Nodes?
    Voting Booth?