During the post mortem, I whittled my glob solution from 48 to 46:
-ln 1&eval"$.@{[<|y|{a,e,i,o,u,y,}||c>]}"||print 48 bob
-p $_ x=eval"\$|--@{[<&y&{a,e,i,o,u,y,}&&c>]}" 46 bob
-p $_ x=1&eval"~$.@{[<&y&{a,e,i,o,u,y,}&&c>]}" 46 bob
For cheap thrills, I just whittled Keith's unorthodoxy to 46 too:
-n $==$.&1;$=^=7
..y*yuoeia***ord
for/./g;$=||print 50 ivey
-p $==$.&1;$=^=7 .ord for/[aeiouy]?/g;$_ x=!$= 46 bob
-p $==--$|;$=^=7 .ord for/[aeiouy]?/g;$_ x=!$= 46 bob
Well, it passes the test program. Keith, is it sound?
Can anyone improve on the above whittling, or produce a sub-46
solution using a different approach to Eugene and Rick?
/-\ndrew