It is relatively easy to find a solution to the ages of Pavel's children and how long it has been since he saw Igor. Trial and error will do the trick. Proving that the solution is the only one that fits the narrative is much more difficult. Let's begin by reviewing the facts:

One thing that should be apparent is that if \(n = 1\) or \(p = 1\), then the younger child's age would have to be 0, i. e., either \(b = 0\) or \(b = c\). So \(n \ge 2\) and \(p \ge 2\).

We know from this page that \(a = {n + 1 \over n - 1}b\), so for successive values of \(n\) starting at \(n = 2\), we can build a table of values for \(b\) and \(a\) and see which ones satisfy the other constraints of the problem. Once we reach a value for \(a\) that exceeds high school age, we can move on to the next value for \(n\).

\(n = 2\)
\(b =\)\(1\)\(2\)\(3\)\(4\)\(5\)\(6\)
\(a =\)\(3\)\(6\)\(9\)\(12\)\(15\)\(18\)