Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl Monk, Perl Meditation
 
PerlMonks  

Re: removing a sublist

by Skeeve (Vicar)
on Apr 20, 2012 at 22:21 UTC ( #966277=note: print w/ replies, xml ) Need Help??


in reply to removing a sublist

I always use a hash for this:

my @winners=("ruth","sheila"); my @correct=("ruth","martin","dee","zack"); my %correct; @correct{@correct}= (); delete @correct{@winners}; print join(' ',keys %correct),"\n";

s$$([},&%#}/&/]+}%&{})*;#$&&s&&$^X.($'^"%]=\&(|?*{%
+.+=%;.#_}\&"^"-+%*).}%:##%}={~=~:.")&e&&s""`$''`"e


Comment on Re: removing a sublist
Select or Download Code
Replies are listed 'Best First'.
Re^2: removing a sublist
by Datz_cozee75 (Monk) on Apr 21, 2012 at 22:17 UTC

    Alright, Skeeve, that's exactly the way I was headed, but it doesn't take me very long before I'm confounded by it. I find myself always wanting to revert to indices and crush it with brute force exhaustion like a numerical integration in fortran. I rarely find myself disappointed when I trust perl syntax.

    Am I correct to think that the keys do not have to be unique? In my mind, the keys would represent the number of times a person has won. Stan won twice and dan won once. How do I marry @frequency to @correct in the script below?

    $ perl tim1.pl fan dango 4 4 2 1 $ cat tim1.pl #!/usr/bin/perl -w use strict; use 5.10.0; use Crypt::Random qw( makerandom ); # initialize pseudorandoms my $r = makerandom( Size => 512, Strength => 1 ); # print "$r\n"; srand($r); #populate lists my @winners = qw/stan dan/; my @winner_copy = @winners; my @correct = qw/stan dan fan dango/; my @correct_copy = @correct; #populate hash my %correct; @correct{@correct} = (); delete @correct{@winners}; print join( ' ', keys %correct ), "\n"; my $count = scalar(@correct); print "$count\n"; my @new_list = @correct; $count = scalar(@new_list); print "$count\n"; # if ( scalar(@correct) eq 0 ) my @frequency = (2, 1); # --@frequency; that didn't work print "@frequency", "\n"; # decrement frequency # does anyone with a key value of zero have a correct response yet? # if yes, you have a winner; if not then test whether there was a corr +ect response among those with positive keys. # if no one correct among them, then there was no correct response, be +cause that partitions the sets. $

    I tried to map out in pseudoscript what I'm doing here. Obviously, I don't have the parts to make a control that works yet, but the contest just started today, so I don't have to have winner until after the time window closes.

    Why does the hash have 4 nodes after 2 have been deleted?

    How do I decrement the keys of a hash?

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://966277]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (13)
As of 2015-07-29 12:51 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (263 votes), past polls