Pumping Theorem and K
Definition from Wikipedia:

If a language L is context-free, then there exists some integer p ≥ 1 (called a &quot;pumping length&quot;[1]) such that every string s in L that has a length of p or more symbols (i.e. with |s| ≥ p) can be written as
s = uvwxy
with substrings u, v, w, x and y, such that

|vwx| ≤ p,
|vx| ≥ 1, and
$uv^nwx^ny$ is in L for all n ≥ 0.


k is called the pumping length and it's a positive integer. (it can be equal to 1).
k is NOT an arbitrary integer and every CFL is guaranteed to have one.
They chose the string w, since it's a contradicting example. (it's not a unique contradicting example)
I advise you to separate the string w (s in the definition) to different cases for-each position of v and x might be (which satisfy (!) the properties in the definition) and see if choosing some n (0 ... inf) creates a word that is not in L.
If w is in L and don't satisfy the pumping lemma (all the possible cases resolved in contradictions) -&gt; L is not a CFL.
[Note that n=0 will remove x and v from the string, which sometimes help]
[Notice that w (in your example) is $\geq$ k, that's why you can use the pumping lemma. For strings that are shorter, you can't use it.]
For example (1 case): if v and x consists only of 'b', choosing n = 2 will create a string with number of 'b' strictly larger than 'a' which is not satisfying L properties.
k has no relation to n and m, it's a constant. For each CFL you are guaranteed to have one.
Hint for your homework : a possible contradicting example choice is very similar to your example.