#!perl -ln0 $*=qr/\Q$&/,s/^($*) $* //,/ $* /||s/^($*)\s//g&print$1while/\S+/g;a/!$_ |
#!perl -ln0 $*=qr/\Q$&/,s/^($*) $* //,/ $*$/||s/^($*)\s//g&print$1while/^\S+/g;a/!$_ |
improved tie-breaker
#!perl -ln0 $*=qr/\Q$&/,s/^($*) $* //,/ $* /||s/^($*)\s//g&print$1while/^\S+/g;a/!$_ |
$* is fun.
#!perl -ln0 $*=qr/\Q$&/,s/^($*) $* //,/ $*$/||s/^($*)\s//g&print$1while/^\S+/g;$_&&die |
#!perl -ln0 $r=qr/\Q$&/,s/^($r) $r //m,/ $r$/m||s/^($r)\s//gm&print$1while/^\S+/gm;$_&&die |
#!perl -ln0 $r=qr/\Q$&/,s/^($r) \1$/$1/m,/ $r$/m||s/^($r)\s//gm&print$1while/^\S+/gm;$_&&die |
#!perl -ln0 $0=$&,s/^(\Q$0\E) \1$/$1/m,/ \Q$0\E$/m||s/^\Q$0\E\s//gm&print$0while/^\S+/gm;$_&&die |
I should have found this earlier.
#!perl -ln0 ($y=$&)=~s/\W/\\$&/g,s/^($y) $y$/$1/m,/ $y$/m||s/^($y)\s//gm&print$1while/^\S+/gm;$_&&die |
#!perl -ln0 ($y=$&)=~s/\W/\\$&/g,s/^($y) $y$/$1/m,!/ $y$/m&&s/^($y)\s//gm&print$1while/^\S+/gm;$_&&die |
do we need /g in the second RE?
#!perl -ln0 ($y=$&)=~s/\W/\\$&/g,s/^($y) $y$/$1/gm,!/ $y$/m&&s/^($y)\s//gm&print$1while/^\S+/gm;$_&&die |
and again.
#!perl -ln0 ($y=$&)=~s/\W/\\$&/g,!/^(.+) (?!\1$)$y$/m&&s/^($y)\s($y )?//gm&print$1while/^\S+/gm;$_&&die |
finally below 100.
#!perl -ln0 ($y=$&)=~s/\W/\\$&/g,!/^(.+) (?!\1$)$y$/m&&s/^($y)\s($y )?//gm&&print$1while/^\S+/gm;$_&&die |
It's closer...
#!perl -ln0 ($y=$&)=~s/\W/\\$&/g,/$y/&!/^(.+) (?!\1$)$y$/m&&print($&)+s/^$y\s($y )?//gmwhile/^\S+/gm;$_&&die |
can I pass 100?
#!perl -ln0 ($y=$&)=~s/\W/\\$&/g,/$y/&!/^(\S+) (?!\1$)$y$/m&&print($&)&s/^$y\s($y )?//gmwhile/^\S+/gm;$_&&die |
Hope this works.
#!perl -ln0
while(/^\S+/gm){($y=$&)=~s/\W/\\$&/g;s/^$y\s($y\s)?//gm
if/$y/&!/^(\S+) (?!\1$)$y$/m&&print$&}$_&&die
|
It passed the test program (1.0)
#!perl -ln0
while (/^\S+/gm) {
($y = $&) =~ s/\./[.]/g;
s/^$y\s//gm,s/^$y\s//gm if /$y/ & !/^(\S+) (?!\1$)$y$/m && print$&;
}
$_&&die
|
#!perl -ln0 $0=$&,s/^(\Q$0\E) \1$/$1/m,/ \Q$0\E$/m||s/^\Q$0\E\s//gm&print$0while/^\S+/gm;$_&&die |
#!perl -ln0 $0=$&,s/^(\Q$0\E) \1$/$1/m,/ \Q$0\E$/m||s/^\Q$0\E\s//gm&print$0while/^\S+/gm;$_&&die |
#!perl -ln0
$n=map$a{$_}++,split;while($n--){for$x(keys%a){($y=$x)=~s/\./[.]/g;s/^$y .+
//gm,delete$a{$x}if/$y/&&!/^(\S+) (?!\1$)$y$/m&&print$x}}print
for keys%a;$_&&die
|
#!perl -ln0
$n=map$a{$_}++,split;s/(\S+) \1
//gm;while($n--){for$x(keys%a){($y=$x)=~s/\./[.]/g;s/^$y .+
//gm,delete$a{$x}if/$y/&&!/ $y$/m&&print$x}}print for keys%a;$_&&die
|