title: How to implement this function using only stl algotithms
body: <p>I have to implement a function that prints on the console every string in lexicographically order that has, as first letter, char <code>c</code>, using only stl algorithms.</p>
  
  <p>Here is what i thought:</p>
  
  <pre><code>void f(const std::vector&lt;std::string&gt;&amp; vs, const char c)
  {   
      std::vector&lt;std::string&gt; tmp = vs;
  
      std::sort(tmp.begin(), tmp.end());
      std::ostream_iterator&lt;std::string&gt; out(std::cout, "\n");
      std::copy_if(tmp.begin(), tmp.end(), out, *predicate*); 
  
  }
  </code></pre>
  
  <p>As predicate I thought:</p>
  
  <pre><code>//*(tmp.begin()-&gt;begin()) == c);
  </code></pre>
  
  <p>But it doesn't work. </p>