I find this question unclear. Suppose that $m is 2 and $n is 3. Given that the phrase "this is strange" appears, do you want to see ("this is strange") returned or ("this is strange", "this is", "is strange")?
From both a programming and a spec problem I like only looking for phrases of a given size (which was what was done in the story). From that you can derive your solution through:
sub p{
($m,$n,@_)=@_;map{f($_,@_)}$m..$n
}
An incidental note. The mathematician in me reads your phrase "a list of" and wants to offer the following cheat as a "solution":
sub p{()}
(It is a list, and everything in it is a phrase of the right size that appears in both lists!)
UPDATE
And, of course, I can show that all golf can be improved with the utterly ridiculous:
sub p{}
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|