title: Find a vertex disjoint path from source to destination
body: <p>Is there a deterministic algorithm to check if a graph contains a vertex-disjoint path from a source to destination, with complexity <code>O(nm^2)</code> (n is number of vertices, m is number of edges) or is this NP-Hard (if so, why)?  Vertex disjoint path means a path with no common internal vertex. eg. </p>
  
  <pre><code>s -&gt; a -&gt; b -&gt; c -&gt; d  
  s -&gt; x -&gt; y -&gt; z -&gt; d
  </code></pre>
  
  <p>Are vertex disjoint but </p>
  
  <pre><code>s -&gt; a -&gt; b -&gt; c -&gt; d
  s -&gt; x -&gt; a -&gt; z -&gt; d
            ^
  </code></pre>
  
  <p>Are not since a is common vertex. </p>
  
  <hr>
  
  <p>The full question is: </p>
  
  <p><img src="https://i.stack.imgur.com/vJ869.png" alt="enter image description here"></p>